4D v14.34Dで Web サービスを公開する |
||
|
4D v14.3
4Dで Web サービスを公開する
4Dで Web サービスを公開する
通常、4Dでは、次の3つの段階を経て Web サービスが公開されます:
さらに、カスタマイズを行う段階もありますが、これは必須ではありません。 Web サービスとして公開する目的で、あらゆるタイプのプロジェクトメソッドを作成することができます。このメソッドは、引数を受け取り、結果を返さなくてはなりません。また、その引数は、コンパイラテーマのコマンドを使用して、必ずメソッドヘッダーで宣言しなくてはなりません。 デフォルトとして、4Dは Web サービスとして公開される際に、メソッドの処理に必要となる引数をフォーマットします。しかし、SOAP DECLARATIONコマンドを使用すると、これらの引数を変更することができます。 4Dは、SOAP 経由で送受信したデータの暗号化と解読を自動的に処理します。 警告: SOAP リクエストでは、メソッド名が XML タグとして使用されます。タグ名に関する XML 規格に準拠して、Web サービスとして公開されるメソッド名にはスペースや拡張文字を使用しないでください。また、数字を頭文字として使用できません。次の Latin 文字だけを使用することができます: ([AZaz0-9._] ¦ '-') * Web サービスとして公開されるメソッド開発の定義や監視を行うには、"Web サービス"テーマのコマンドを使用しなくてはなりません。これらのコマンドについては、4DランゲージリファレンスマニュアルのWebサービス (サーバ)を参照してください。 データベースの1つ以上のメソッドを Web サービスとして公開するためには、次の4つの条件を満たしていなくてはなりません。
4Dエクスプローラのメソッドページにおいて、Web サービスとして提供されるメソッドは特定のアイコンで表わされます (WSDL ファイルに公開されるメソッドも同様: )。 WSDL は、4Dメソッドの呼び出しに必要となるシンタックスと情報 (メソッド名、URL、引数等) を XML 言語で記述します。 4Dにおいて、WSDL は単独の Web サービスに相当します。WSDL はメソッドとその引数を定義し、特定の場所で参照されます。4D内で、WSDL は実在上の“ファイル”ではありません (メモリ上だけ に存在し、ディスクには書き込まれません)。つまり、WSDL は URL であり、RPC モードで公開される Web サービスの場合は 4DWSDLという名前が付けられ、DOC モードで公開される Web サービスの場合は 4DWSDL/DOC という名前が付けられます。また、常に Web サーバーのルートに置かれます。 例えば、Web サービスのアドレスが http://www.myserver.com である場合、次の URL で WSDL を参照することができます:
WSDL 内のメソッドを追加、または削除するには、メソッドプロパティダイアログボックスの該当するオプションを選択するか、または選択解除します。すると、4Dは即座に WSDL の内容を更新します。 注: 4Dのエクスプローラにおいて、WSDL で公開されるメソッドは特定のアイコンにより区別されます。 Web サービスリクエストが許可されると、メソッドプロパティウインドウで少なくとも1つのメソッドに WSDL で公開するオプションが選択されていれば、4Dは 4D Web サーバーの WSDL を動的に自動生成します。デフォルトとして、このオプションは選択されていません。 インターネット上に公開される Web サービスにはそれぞれ名前が付けられています。この名前を使用して、SOAP サーバーレベル (サーバーが複数の Web サービスを公開する場合) および Web サービスディレクトリ上の双方のサービスを区別します。 デフォルトとして、4Dは“A_WebService”という名前を使用します。このパラメーターは、データベースの環境設定において Web テーマの Web サービスページで変更することができます。 警告: タグ名に関する XML 規格に準拠して、文字列にはスペースや拡張文字を使用しないでください。また、数字を頭文字として使用できません。次の Latin 文字だけを使用することができます: ([A-Za-z0-9._] ¦ '-') * インターネット上に公開される Web サービスは、それぞれがユニークでなければなりません。XML の名前空間を使用すると、Web サービス名の一意性が保証されます。名前空間は任意の文字列であり、一連の XML タグを独自の方法で識別するために使用されます。一般的に、名前空間はその会社の URL で始まります (http://mycompany.com/mynamespace)。この場合、特別な URL を指定しなければならないという訳ではなく、使用する文字列が一意であることが重要になります。 デフォルトとして、4Dは http://www.4d.com/namespace/default という名前空間を使用します。このパラメーターは、データベースの環境設定においてWebテーマの"Webサービス"ページで変更することができます。 Web サービスとして提供され、WSDL で公開されるメソッドに割り当てたコメントは、“documentation”フィールドとして自動的に WSDL ファイル内に現われます。 これらのコメントはエクスプローラーのメソッドページにて設定されている必要があります (コメントを使用する参照)。 このメカニズムは、公開されるメソッドの説明や文書化を行うために使用されます。このフィールドの解釈や処理方法は、クライアントの Web サービスの実装により異なります。 4Dにより Web サービスが公開されると、Web サービスをサポートするあらゆるクライアントアプリケーションからその Web サービスに接続することができます。アクセスモード、ならびに Web サービスのサーバーとやり取りする情報の処理方法は、その操作に使われるクライアントアプリケーション側で決まります。 4D Web サービスを使用する上で必要となる情報はすべて (サービスの URL、使用されるパラメーター等)、4Dの WSDL に公開されます。原則として、Web サービスを使用する際は、この情報を取得するために、まず SOAP サーバーの WSDL を読み込むことから始めてください。4Dにおいて、WSDL のURL は、http://サーバーアドレス/4DWSDL (RPC モード) または、http://サーバーアドレス/4DWSDL/DOC (DOC モード) です。 ただし、このステップは必須ではありません。SOAP サーバーへはダイレクトに接続することができます。 SOAP リクエストの作成に必要となる値の一覧、およびその定義方法を次に示します:
|
プロパティ
プロダクト: 4D ARTICLE USAGE
デザインリファレンス ( 4D v14 R2) Parent of : 4Dで Web サービスを公開する ( 4D v12.4) |