Webサービス
Webサービスに関する関連サイト、関連ブログ、関連動画をご紹介します。
関連Q&A
- PCから音がでなくなったので、前回ここで質問させていただき、教えてもらったサイトを開き、ダウンロードしたのですが、そのファイルを開こうとしたら、「このファイルを開けません」と表示され、「Web サービスを使用して適切なプログラムを探す」でOKを押し、その後ジャンプしたサイトで「ファイルを開くことができるソフトウェアの Web サイト」のリンクを押すと、セットアップが始まり、その後、「このコンピュータには、このソフトウェアのインストールに必要な条件が不足しています。」と言われ、結局出来ませんでした。 どうすればいいのでしょうか。 ちなみに、教えてもらったサイトは http://ksrd.yahoo.co.jp/PAGE=DT_SOLVED/OUTLINK=1/QID=1166775586/AID=163889647/SIG=154pjvvuu/EXP=1310912819/*-http%3A//supportapj.dell.com/support/downloads/driverslist.aspx?c=jp&l=ja&s=gen&ServiceTag=&SystemID=PLX_PNT_CEL_GX270&os=WW1&osl=jp&catid=&impid=です。PCの種類は Microsoft Windows XP Professional Version 2002 Service Pack 1 です。型番は OPTIPLEXGX270 です。よろしくお願いします。
- <補足について>私はfirefoxなのでIEに切り替えると、ダウンロードオプション画面が出ますね。そこで上を選択すると、インストールツールが勝手に起動してハード検証+ダウンロード+インストールを行うようです。下を選択すると、単純に実行ファイルのダウンロードですね。補足を読む限り、ダウンロードオプション画面も出ないってことのようですね・・・もしかして質問者さんが使用してるブラウザはfirefoxでもIEでない他のブラウザではありませんか?(私が確認できたのは、この2つ)単純なページではないですので、ブラウザがうまく対処できてないのでは?違いますかね?^^;おそらくDellDriverDownloa...application(9,3kb)はインストールツールではなくダウンロードオプション画面のプログラムだと思います。
- Webサーバ設定やネットワーク技術に詳しい方のご意見を賜りたく!!Webサーバ設定や通信ネットワークに詳しい方のご意見伺いたく!!現在自社にてJavaスクリプト(AJAX)でつくられた特定の業務プログラムをWebサービスとしてインターネット上で提供しています。(いわゆるASPサービスです。) 通信プロトコルはhttpsです。Webサーバーにはアパッチを利用しています。 ある特定のお客様環境において1日に何回もプログラム利用中に通信が途切れる現象が発生しています。 お客様の環境は利用端末はネットPCでauのモバイル通信カードでインターネット接続しています。 当方のWebサーバーまでの間にファイアウォール等通信機器がいくつかありお客様の端末はVPNソフトウェア が搭載されています。(モバイル網の上にVPN網を構築していて、お客様がご利用になられているデータセンタ内にVPN装置がある。) なお、当方WEBサーバのアパッチのKeepAlive設定は有効です。 問題の解決のためにこのKeepAlive設定を無効にしてみようかと思うのですがそうするとご利用中の全ユーザ様に影響があり、またサーバ側の回線帯域も圧迫しそうであんまり気が進みません。 そもそもこの手の問題にKeepAliveを無効にするという対応は正解なのでしょうか? その他にWebサーバ側でやれることはないでしょうか? 有識者の方、ぜひご意見ください!!
- [補則へ]1秒毎に情報を更新する、外為取引に使うようなJavaスクリプトでしょうか。もしかするとKeepAliveをOffにする対応は、改善が見られるかもしれません。雰囲気ですが、一度アクセスし取得した情報を取るか、新たに接続して情報をとるかがKeepAliveの為にあやふやになっているような、そんな感じがします。そして、手元でリクエストしたのにサーバから新しい情報を得られないので接続が切れてしまうとか、---------------KeepAliveの設定を変更しても状況に変化は無いと思います。特定の環境からのアクセスのみそのような通信断に見舞われるのであれば、その環境の問題であってサーバ側でなにかできるということは無いと思います。KeepAliveはOnが推奨されていますが、とてつもなくアクセス数が多く、できるだけ多くの接続元からの接続を受け付けたい場合等にKeepAliveをOffにします。すると、接続から切断までが早くなり1接続が使いつづけるリソースとその時間がKeepAlive Onに比べて短くなるため、多くの接続元からの接続を受け付けるためのリソースを確保することが出来ます。しかしKeepAliveがOffだとコンテンツを取得するごとに新しい接続を行うので、レスポンスは低下します。接続がきれるのが、ご利用のJavaスクリプト利用時に限るのかを確認し、モバイル網とVPN網にて通信断が発生する原因がないか確認されると飯井かもしれません。
- オンラインジェネレーターのWEBサービスの仕組みを教えて下さい。(javascript,php,)http://www.weebly.com/ のように、オンラインでWEBサイトを生成出来る仕組みは、裏でどのような仕組みが使われているのでしょうか?パーツをドラックドロップで操作するだけでWEBサイトが完成するのが不思議です。拡張子を見るとPHPがベースのようですが。一日色々な技術サイトを調べて自分なりに仮説をたてました。1:ログイン2:DBにログイン情報を入れる2-1:ログイン情報を元にマイページを表示3:PHPのsmartyか何かのテンプレートエンジンをつかう。4:ユーザーが選んだテンプレートをDBから呼び出す。5:javascript(DOM)を使い、テンプレートを書きかえる6:PHPで静的ページを生成一番不思議なのは、ページ上部にあるパーツをドラッグする事で、テンプレートが書きかえられる部分です。この部分の技術的要素が検討つきません。firebugなどで見ると、複数のjavascriptライブラリなどを使っているようですが、何か関係あるのでしょうか。難しい説明でも用語でも構いません。頂いたヒントから、さらに深掘りしていきたいと思います。よろしくお願い致します。
- 仕組みの部分をピンポイントで書くとドラッグなどで変化があったときに、特定のブロックのHTMLをajaxでサーバーに送って保存してます。それを開く時をDBから直接呼び出すだけです。実装するとなれば、上の説明だけで想像が付くくらいの知識は必要ですけどね。
- Webサービス 配列の引渡しのやり方を教えてください。。【環境】C#SilverLightVisualStudioSilverlightApplicationにてWEBサービスを利用したプログラムを作成しています。そのWEBサービスを呼び出す際にintやstringなどの引数を渡して実行することができたのですがstring型の配列を渡すことができません。エラーの内容としては以下が出力されています。「エラー 2 引数 1: 'string[]' から 'SilverlightApplication3.ServiceReference1.ArrayOfString' に変換できません」なぜArrayOfStringに自動で変えられてしまうのか、また回避方法を教えて頂ければと思います。以下作成したソースコード private void button1_Click(object sender, RoutedEventArgs e) { string[] array ={"aaa","bbb","ccc"}; test(array); } public void test(string[] array) { try { ServiceReference1.WebService1SoapClient aaa = new ServiceReference1.WebService1SoapClient(); aaa.HelloWorldAsync(array); } public class WebService1 : System.Web.Services.WebService { [WebMethod] public string HelloWorld(string[] str) { System.Console.WriteLine(str); return "Hello World"; } }
- [ArrayOfStringに自動で変えられる理由]理由は、以下に書かれています。http://social.msdn.microsoft.com/forums/ja-JP/wcfja/thread/a0976315-0059-460b-8ec6-69ab96a77555/上記に書かれている参照先である以下を参照して下さい。http://msdn.microsoft.com/ja-jp/library/aa347850.aspx<Webサービスの概要>ところで、クライアント/サーバーの構成を作る際、昔は、TCP/IP等の一般の通信機能(ソケット通信)を利用して実現していました。しかし、TCP/IP等の通信機能は、電文(バイト型の配列)を送受信するだけなので、サーバーとして機能を公開する仕組みは、プログラマー自身が作らなければなりません。そこで、アプリケーションの機能をエクスポート(外部公開)する仕組みを持った、本格的なサーバー作成用技術として、分散システムが有ります。ただし、分散システムは、各種の開発環境によって規格が異なります。そこで、分散システムで標準化を行なったのが、Webサービスです。Webサービスでは、プログラムを部品化してインターネット上に置き、それをクライアント側から利用する事が可能です。<C# の配列とXML>C# (及びVB.NET 等の.NET系言語)では、配列は、要素数が固定長のstring[] と、可変長の List<string>の2種類があります。しかし、それは、C# の事情です。Webサービスでは、標準化を行なうために、データーをXMLで表現しますが、それは固定長配列も、可変長配列もありません。ただ、XMLでは、「型が何で、要素数が幾つある」と言う情報に過ぎないのですから。そのため、C# 側での固定長配列string[] であろうが、可変長配列List<string> であろうが、ArrayOfStringと言う配列に自動で変えられてしまうようです。[解決方法の件]<シリアライズ>(私は、ここに紹介するシリアライズは、Silverlight では うまく行かなかったのですが、C# では基本的な技法ですので、概要を下記に記しておきます。なお、その後に紹介する方法のほうを、使い物になるか検討して見て下さい)string型配列の単独で、送受信をするから、前述のような変な現象になるのでしょうから、string型配列をメンバーに持つクラスで送受信すれば良いと思います。と言いますのは、C# (及びVB.NET 等の.NET系言語)では、シリアライズと言う便利な機能がありますので、それを利用すれば良いです。ところで、C言語やC++で複数のデーターを通信する時は、「ooo個目のデーターは、電文のoooバイト目からoooまで」と言うように、バイト単位で管理する仕組みを作ります。しかし、それは大変ですので、C#等の.NET系言語では、シリアライズと言う機能があります。これは、通信したい複数のデーターをクラスにまとめておけば、それをバイナリ化してくれる機能です(もちろん、バイナリ化された物を復元することも可能です)。なお、シリアライズには、バイナリ化だけでは無く、XML化する物や、SOAP化する物も用意されています(SOAPは、XML をベースに発展させた規格で、XML よりも複雑なデーター構成を取り扱えます)。SOAP は、Webサービスでのプロトコル(通信の規約)ですので、シリアライズでデーターをSOAP化すれば、問題は解決すると思います。なお、シリアライズは、C# でのサーバー作成機能であるWCFでも活用されています。WCFでは、C# で扱えるサーバー技術を統合した物ですので、Webサービスも作れます。<WCF RIA Services>私も興味が有りましたので、いろいろと試してみたのですが、Microsoft Silverlight 自体が、クライアント/サーバー用では無く、スタンドアローン用(単独マシン用)なので、なかなかうまく行きません。そこで、調べてみましたら、WCF RIA Services と言う機能が用意されたようです。新機能として紹介されているので、Silverlight 4 と .NET Framework 4 からの機能だと思います。http://msdn.microsoft.com/ja-jp/library/ee707344(vs.91).aspxWCF RIA Services は、Silverlight からサーバー側のリソースを編集することを可能にする機能です。よって、WCF RIA Services を使えば、Silverlight から、サーバー側のデーターを作成/削除/読み取り/更新をする事が可能だそうです。(ざっと見た感じでは、Silverlight とサーバーとで通信する電文をシリアライズ化してくれる技法のようです)例えば、Silverlight からWCF経由でデーターベースを編集する事も可能なので、質問の配列の読み書きは問題無いはずです。WCF RIA Services で検索すると、サンプルがありますので、目的に合っていそうならば、試してみて下さい。
- VOB形式フアイルについてDVDに保存したVOB形式ファイル(動画)を開こうとしたら、”フアイルを開けません”のメッセージが出ました。ガイドに従って、”Webサービスを使用して正しいプログラムをさがす”を実行、たくさんのダーンロードプログラムが出てきました。その中に”VOBフアイルを開く 2分でVOBフアイルを開きます、今すぐダーンロード(推奨)”があったので、これを実行したところ”RegUse”がダーンロードされました。これを実行したら、フアイルのスキャン(エラーの検出)が始まり、VOB形式フアイルは開けませんでした。そこで質問ですが1.”RegUse”とは何者ですか2.”RegUse”でVOB形式フアイルは開けますか3.VOBフアイルを開く簡便な方法はありますか。以上、よろしくお願いします。
- DVD is not emptyはレジストリにエラーがないか調べるソフトです!単にDVD is not emptyの宣伝をクリックしたから勝手に検査が始まったんでしょう~VOBファイルとはただの動画ファイルです! 開けないのが普通です!(インフォメーションを入れれば見れるけど)VOBと一緒にインフォメーションファイル(IFOファイル)はありませんか?それが動画の情報ファイルなんでそれで再生すればいい
- UFJカードの締切について質問です。今月(7月16日から8月15日まで)の利用が締切られず更新されないままの状態が、webサービスの明細で確認されます。1ヶ月以上経つのにずっと同じ利用月扱いになっているようなのですが、実際は締め切られているのでしょうか?
- 1ヶ月以上?8/15の締め日からまだ4日しかたってませんよ。毎月だいたい21日から24日くらいの間に請求額が確定します。
- SOAとDIの関係http://www.atmarkit.co.jp/fxml/rensai2/beehive01/beehive01_1.html「SOAは大ざっぱないい方をすればWebサービスのためのDIコンテナ(DI:Dependency Injection:依存性の注入)です。」とあるんですが、DIとSOAの関係って切っても切れないものなんでしょうか。今見ているSOAの解説にも、WikipediaのSOAの項にも、DIに関して特にのっていないようですが。Dipendency Injection に出てくるサービスは、以下のようなSOAにおけるサービスの要件を満たしていると考えてよいのでしょうか?1.サービスが独立している:ひとつのサービス内で処理が完結:DB以外で他とリソースの共有がない:ビジネスプロセス上でサービスの実行順序変更できる:個々のサービスが単独で開発・運用できる2.インターフェースが公開されている:サービス呼び出しと結果確認を行うためのインターフェースが公開されている:インターフェースを介して誰からでも利用できる:ネットワーク上のどこからでも利用できる3.ビジネスプロセスによる連携が容易に行える
- たまたま今は、Java関係の業務から離れているので、回答をするか、どうか迷っていたのですが。しかし、本件は、Java の業務を行なっていた頃に関わってきた分野ですので、知っている範囲で回答します。[DI]DI の意味は、調査済みの様なので、ここでは省略します。依存性の注入(Dependency Injection)http://ja.wikipedia.org/wiki/%E4%BE%9D%E5%AD%98%E6%80%A7%E3%81%AE%E6%B3%A8%E5%85%A5http://e-words.jp/w/DI.html以下では、SOA と DI の関わりについて説明して、質問の件を含めて、DI に対する回答とします。[2002年のWebサービス]SOA を実現するための具体的な技術として、Webサービスが作られました。マイクロソフトとIBM が手を組んで、後には、オラクル、富士通、BEAシステムズ等の企業も加わって、WS-I と言う組織が作られました。そのWS-I では、Webサービスと、その関連技術が作られています。そして、2002年から正式にWebサービスが使えるようになりました。様々な機能のプログラムを部品化して、それをインターネット上に置くと言うものです。しかし、サーバー技術としては完成度が高かったのですが、そのサーバーに対応するクライアント技術が追い付いていませんでした。すなわち、インターネット上にある様々な機能に対して、どうやってクライアント側で受けあえば良いのか、と言う問題がありました。よって、2002年と、それ以降では、インターネット上にある様々な機能に対して、それに対応したクライアント用のソフトをひとつひとつ作ることにしました。そのクライアント用のソフトを作るのは、プログラマーなので、一般ユーザー向けのシステムではなく、プログラマーのためのシステムになってしまいました。しかし、それでも、インターネット上にある様々な機能を利用して、システムを作ることが可能なので、画期的なことです。だだし、それは前述の通り、一般ユーザー向けではなく、プログラマー向けのものです。[リッチクライアント]そこで、将来本格的にSOA を一般普及させるための対策として、リッチクライアントがあります。リッチは、豪華の意味ですので、リッチクライアントとは、クライアントを高機能化することです。すなわち、サーバーが、高機能化、汎用化したのに対して、それにつり合うように、クライアントも高機能化するという考え方です。例えば、グラフィック処理(ゲーム性のある処理やムービーの処理)は、サーバー側に頼っていては、いけない面があります。グラフィック処理は、多量のデーターを取り扱うので、サーバーの処理結果をクライアントに送っていたら、通信時間がかかります。よって、グラフィック処理は、クライアント側で処理することが望ましいです。そこで、Silverlight や Flash の類の、グラフィック処理が強化されたリッチクライアントが活躍して行きます。[動的言語]サーバー側に様々な機能が用意されているのに対して、それにクライアントが、どう対処してよいのかが難しいです。そこで、Ruby や Python と言った動的言語が活躍します。動的言語は、プログラムの構成をコンパイル時に決定するだけではなく、実行時にも、構成を決められます。すなわち、ユーザーの操作や要求に応じて、柔軟な対処を行なうのに適した言語です。よって、SOA によるサーバー側の様々な機能に対しても、対処を行なえます。SOA を一般普及へと実現するには、リッチクライアントの考え方と、動的言語の考え方の両方が重要です。よって、動的言語の高機能化や、リッチクライアント系での動的機能の取入れが、進められています。[クラウド対応データーベース]SOA により部品化されたプログラムは、インターネット上に登録して、それをユーザーが検索することが可能になります。よって、今後のDBは、クラウドコンピューティングになじみ易いDBが、主流化する可能性があります。なお、Webサービスを作ったWS-Iのメンバーは、DB を作成している大手企業が、せいぞろいしています。[動的データーベース]データーベースも、動的処理(実行時判断の処理)が必要です。今のSQL を基本としたDB では、動的処理が難しいので、動的機能を取り入れたXML-DB に切り替わらなければなりません。しかし、現行のDB が定着しているので、なかなかXML-DB に切り替われません。ところで、前述のリッチクライアントの説明から、クライアント側にも多量のデーターを保持する仕組みがほしいです。もしも、XML-DB が普及すれば、リッチクライアントからDB へ動的に接続が可能になります。
- 携帯自動メールプログラムあらかじめ指定しておいた日時になると、指定している人間数人の携帯宛てにメールを出すプログラムで悩んでいるのですが・・・。当方Web製作に使用するプログラムしか知りません。PHPやjavascriptなどです。これらはいずれにしても当方のPCの電源をつけっ放しにし、定期的にブラウザを更新しつづける必要があるため、現実的ではないと思いました。infoseekのフリーメールや、Gmailの機能に似たようなモノがありますが、数週間先までの設定しか出来ませんでした。考えているのはあくまでメンテフリーです。半永久的に動くモノです。1、これを実現するには、何か自分でソフトを作るしかありませんか?2、Webプログラムだけでは無理なのはわかりました。どんな言語を学べばいいでしょうか?3、これを実現する既存のWebサービスやソフトなどはありますか?
- レンタルサーバでcron(windows のタスクのようなもの)が使えれば、PHP でも可能ですよ。有料なら大概ついてるサービスですが、たまにフリーでも見かけます。あとは、半永久か分かりませんが、リメンバーザミルクなんかが有名ですかね?アプリを作るにしても、パソコンが動いてないとダメなので、永久がなければ、アプリかPHP 等でgmail の期間限定の機能を利用するしかないでしょうアプリかPHP で永久の予定を保存し、月一回gmail の予定に書き込むとか。あとは、常に使う携帯とかを利用するとかかな?
- Webサーバ設定やネットワーク技術に詳しい方のご意見を賜りたく!(2)Webサーバ(アパッチ)でのKeepAlive設定について質問です。現在自社にてJavaスクリプト(AJAX)でつくられた特定の業務プログラムをWebサービスとしてインターネット上で提供しています。(いわゆるASPサービスです。)通信プロトコルはhttpsです。Webサーバーにはアパッチ、アプリケーションサーバにトムキャットを利用しています。業務プログラムのここの機能(データ入出力機能、グラフ出力機能、メール送信機能など)はWebサービスとして構成されていおり、画面も画像等結構使っているため、発生する電文量は比較的多く、性能的には少々重いプログラムです。利用するお客様は企業ネットワークを介してのお客様が多く、従いまして当方サーバと通信する経路も複雑な場合が多いですが、お客様ネットワークが①帯域がせまい、②通信量が多く帯域を圧迫している、VPNを張っている、一部にモバイル網であるなど、少々「難有り」なケースで当方業務プログラムのhttp電文がロスト(ヘッダー部は届くがBody部が届かない)し、アッパッチ設定上のタイムアウト値がくるまでフリーズする現象がでています。フリーズしないまでも通信エラーで通信が一度切れる場合もあります。フリーズや通信エラーを検知するタイミングは業務画面にある各種ボタンを押下し、DB登録等のサーバ処理を走らせた直後に起こるケースが多いです。(DB登録やメール送信等サーバ側処理は正常に終了しているケースが多い)このような現象を改善するために試行錯誤している状況ですが、KeepAlvie設定を無効にしてみたタイミングでと現象の発生頻度が激減したという報告をお客様よりうけました。実は同じタイミングでお客様ネットワーク側の回線調整も実施されている可能性もあり、本当にKeepAliveを無効にしたことで現象が改善したのかどうかは分かりません。もう一度KeepAliveを有効にして切り分けてみればよいのかもしれませんが、現在の良好な状態を一時的でもまた元に戻る可能性をお客様に了承頂けないので迂闊には実施できません。お聞きしたいのは、①KeepAliveが原因で通信が不安定になるような事例はあるのか?ある場合、それはどのようなケースがあるのか。②KeepAlveの無効化が現象の発生頻度を抑える効果がある状況だとして、KeepAliveを無効化する以外のチューニング方法は考えられないか?などです。よろしくお願いします。
- 微力ながら…お力になれればと思います。まず、検証環境を構築されることをおすすめします。ネットワークは既存のものでお客様の使用端末、回線、VPN設定も(要件を)同じにして再現するか確認します。サーバー側でWireSharkなどのパケットキャプチャも同時に走らせておきます。これで原因がだいぶ特定できるのではないでしょうか。その上でですが…概ね1番目の方と同じ意見で、補足的な感じです。>①KeepAliveが原因で通信が不安定になるような事例はあるのか?ある場合、それはどのようなケースがあるのか。KeepAliveは一定時間接続を維持する設定です。"KeepAliveが原因で通信が不安定になる"というよりも、モバイルなどネットワークの信頼性が低い(パケットロスが発生しやすい)環境であれば、毎回接続を確立したほうがシステムとしては安定します。また、ネットワーク切断の検知やデバッグもしやすくなります。その分、トラフィックは各ヘッダ分だけ増加しますが、近年のWebアプリケーションのトラフィック量と比べると微量だと思います。逆にKeepAliveが活きる環境は社内ネットワークなどの高い信頼性が確保できる場合です。それ以外は使わないようにしたいですね。②KeepAlveの無効化が現象の発生頻度を抑える効果がある状況だとして、KeepAliveを無効化する以外のチューニング方法は考えられないか?モバイルのWeb開発の経験は少ないのですが、いくつか方法はあると思います。・通信量を圧縮する・専用アプリを開発し、API経由で通信する■通信量を圧縮する・mod_deflate によるコンテンツの圧縮 (確かZip圧縮されるはず。ただし、ブラウザが対応していなければならない)・コードジェネレータ によるコードの圧縮 (無駄なコメント、タブ、空白、改行を除き、HTMLを最低限の構成要素に再構成するコードジェネレータを作る。Googleなんかはそうです)結果的に送信パケット量が減って全体的な安定性の向上にもつながります。■専用アプリを開発し、API経由で通信する・データ入出力・グラフ出力・メール送信用のAPIをサーバー側で用意しておく。 モバイル環境ではモバイル端末専用に軽いアプリを作っておき、各機能を使用するときだけAPI経由で通信する。ざっとこんな感じです。ご参考になれれば幸いです。
