■Webサービスアプリケーションの作成方法
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
サービスエンドポイントインタフェースの定義 | 必須です。 | サービスエンドポイントインタフェースの定義 | 省略可能です。 | Java EE 7機能では、エンドポイントの実装クラスのみでWebサービスアプリケーションが作成できます。 |
WSDLの生成 | iswsgen wsdlコマンドを使用して生成します。 | - | Webサービスアプリケーションの配備時に自動生成されます。 | |
Webサービスエンドポイントクラスの実装 | サービスエンドポイントインタフェースを実装します。 | Webサービスエンドポイントクラスの実装 | ■JAX-WSエンドポイント | |
deployment descriptorの編集 | 以下のファイルを編集します。 | deployment descriptorの編集 | 省略可能です。 | |
配備 | Interstage管理コンソール、またはijsdeploymentコマンドで配備します。 | 配備 | asadminコマンドのdeployサブコマンドで配備します。 | |
インタフェースの提供 | IJServerにWebサービスアプリケーションを配備して取得できる公開WSDLを任意の方法で提供します。 | インタフェースの提供 | ■WSDL取得URLを通知する |
■Webサービスクライアントアプリケーションの作成方法
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
スタブ生成 | iswsgen clientコマンドで生成します。生成されるのは、ソースファイルであり、コンパイルが必要です。 | スタブ生成 | 入手したWSDLからJAX-WSで利用するスタブを生成します。ijwsimportコマンドを使用します。トラブル時などの調査のため、-keepオプションで最終生成物以外の資材(ソースファイルなど)も保存・保管することを強く推奨します。 | |
クライアントアプリケーションの作成 | 生成したスタブ、JAX-RPCおよびSAAJのAPIを使用し、Web Services for J2EEに従ったアプリケーションを作成します。 | クライアントアプリケーションの作成 | 生成したスタブ類を使用して、JAX-WSおよびImplementing Enterprise Web Servicesに従ったアプリケーションを作成します。 |
■Webサービスの実行
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
クライアントアプリケーションがIJServer上以外で動作する場合 | javaコマンドで実行します。 | クライアントアプリケーションがIJServer上以外で動作する場合 | appclientコマンドで実行します。 |
■Webサービス開発コマンド
「13.3.2 運用操作コマンド」の「■Webサービス開発コマンド」を参照してください。
■HTTP接続に関する設定
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
接続先URLを指定する方法 | プログラム中で、スタブオブジェクトに対して以下のプロパティで指定します。 javax.xml.rpc.service.endpoint.address | 接続先URLを指定する方法 | プログラム中で、リクエストコンテキストのプロパティにjavax.xml.ws.BindingProviderオブジェクトを通して指定します。 javax.xml.ws.BindingProvider.ENDPOINT_ADDRESS_PROPERTY | 詳細は、「HTTP関連のリクエストプロパティ設定」を参照してください。 |
Webサービスのユーザ名/パスワードを設定する方法 | プログラム中で、スタブオブジェクトに対して以下のプロパティで指定します。 javax.xml.rpc.security.auth.username | Webサービスのユーザ名/パスワードを設定する方法 | プログラム中で、リクエストコンテキストのプロパティにjavax.xml.ws.BindingProviderオブジェクトを通して指定します。 javax.xml.ws.BindingProvider.USERNAME_PROPERTY | 詳細は、「HTTP関連のリクエストプロパティ設定」を参照してください。 |
接続のタイムアウトを指定する方法 | プログラム中で、スタブオブジェクトに対して以下のプロパティで指定します。 com.fujitsu.interstage.isws.client.connect.timeout | 接続のタイムアウトを指定する方法 | プログラム中で、リクエストコンテキストのプロパティに指定します。
| 詳細は、「HTTP関連のリクエストプロパティ設定」を参照してください。 |
セション管理の利用を指定する方法 | プログラム中で、スタブオブジェクトに対して以下のプロパティで指定します。 javax.xml.rpc.session.maintain | セション管理の利用を指定する方法 | プログラム中で、リクエストコンテキストのプロパティにjavax.xml.ws.BindingProviderオブジェクトを通して指定します。 javax.xml.ws.BindingProvider.SESSION_MAINTAIN_PROPERTY | WS-I Basic Profileでは、HTTP Cookieに依存することを推奨していません。そのため本機能の使用は推奨しません。 |
HTTPプロキシのホストとポート | プログラム中で、スタブオブジェクト、またはシステムプロパティに対して以下のプロパティで指定します。 http.proxyHost(ホスト名) | プロキシを経由した接続 | javaプロセスのシステムプロパティに指定します。 http.proxyHost(ホスト名) | |
HTTPプロキシのユーザーとパスワード | プログラム中で、スタブオブジェクト、またはシステムプロパティに対して以下のプロパティで指定します。 http.proxyUser(ユーザ名) | プロキシを経由した接続 | appclientコマンドの-userおよび-passwordオプション、または-textauthオプションで指定します。 | 詳細は、「HTTP Basic認証情報を設定してWebサービスを呼び出す」を参照してください。 |
■Webサービスクライアントログファイル
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
Webサービスクライアントログファイルの指定 | Webサービス設定ファイルに指定します。 | - | - | 指定できません。 |
Webサービスクライアントログファイルの最大サイズ | Webサービス設定ファイルに指定します。 | - | - | 指定できません。 |
Webサービスクライアントログファイルの最大世代数 | Webサービス設定ファイルに指定します。 | - | - | 指定できません。 |
■SSL通信
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
Webサービスクライアントで使用するSSL定義名 | Webサービス設定ファイルに指定します。 | Webサービスクライアントで使用するキーストアの設定 | 【Webサービスクライアントがアプリケーションクライアントコンテナの場合】 | キーストアの情報の詳細は、「WebサービスクライアントとWebサービス間の通信」-「Webサービスクライアント側の設定」を参照してください。 |
■添付ファイル
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
添付ファイルの一時ファイル作成場所 | Webサービス設定ファイルに指定します。 | 添付ファイルの一時ファイル作成場所 | - | システムプロパティjava.io.tmpdirに設定されている格納先に作成されます。 |
添付ファイル受信時に一時ファイルを生成せずメモリのみで扱うサイズの上限 | Webサービス設定ファイルに指定します。 | - | - | 指定できません。1MB以上の添付ファイルは内部的に一時ファイルを生成して処理されます。 |
レスポンス返却時の、Webサービスアプリケーションで受信した添付ファイルデータ削除(資源解放) | Webサービス設定ファイルに指定します。 | - | - | 一時ファイルは添付ファイルデータのオブジェクトがGCによって回収される際やJava VMの終了時に削除されますが、Javaプロセスが異常終了した場合、ファイルは削除されずに残ることがあります。その場合は、上記ファイルがどのプロセスからも使用されていないことを確認後、手動で削除してください。 |
WSDLでtext/plainに指定された添付ファイルのデフォルト文字コード | Webサービス設定ファイルに指定します。 | - | - | 指定できません。 |
■アプリケーションの配備/配備解除のタイムアウト時間設定
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
アプリケーションの配備/配備解除のタイムアウト時間 | Interstage JMXサービスが使用するjavaプロセスのシステムプロパティに設定します。 | - | - | 指定できません。 |
■JNDIを使用してServiceオブジェクトをlookupする方法
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
JNDIを使用してServiceオブジェクトをlookupする方法 | 以下の手順でWebサービスを呼び出します。 | - | @javax.xml.ws.WebServiceRefを使用する方法に変更します。 |
■SOAPバインディングの指定
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
スタイル(style)・使用方法(use)の指定 | iswsgen wsdlコマンドで指定します。 | スタイル(style)・使用方法(use)の指定 | - | StyleとUseの組み合わせは以下の2パターンが使用できます。 |
■out/inoutパラメタ
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
javax.xml.rpc.holders パッケージに提供されているクラス | <例> | javax.xml.ws.Holder<T>クラスを使用 | <例> | |
com.fujitsu.interstage.isws.apis.holdersパッケージに提供されているクラス | <例> | javax.xml.ws.Holder<T>クラスを使用 | <例> | |
javax.xml.rpc.holders パッケージに提供されていないクラス | 固有のHolderクラスを用意して使用する。 | javax.xml.ws.Holder<T>クラスを使用 | <例> |
■マッピングに変更のあるデータ型
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
java.net.URI | xsd:anyURI | java.net.URI | xsd:string |
■データ型
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
配列型 | <例> | 配列型 | <例> | 値を複数個持つパラメタを表現するために、配列やjava.util.Collectionインタフェースを実装したコレクションクラスを使用して、サポートされているデータ型をWebサービスの送受信に利用できます。コレクションクラスを利用する場合は、java.util.List<String>などのように、型パラメタを宣言することでコレクションの内容となるデータ型を明示できます。 |
■添付ファイル型のXMLデータ型の指定
J2EE機能名/定義名 | J2EE定義方法 | Java EE 7機能名/定義名 | Java EE 7定義方法 | 説明 |
---|---|---|---|---|
swaref型 | iswsgen wsdlコマンドで以下を指定します。 | swaref型 | DataHandlerクラスの宣言に@javax.xml.bind.annotation.XmlAttachmentRefアノテーションを指定します。 | 詳細は、「添付ファイル型」を参照してください。 |
apache型 | iswsgen wsdlコマンドで以下を指定します。 | - | - | apachesoap名前空間のXMLデータ型は使用できません。他のXMLデータ型に変更してください。詳細は、「3.1.3 Webサービスの通信で利用できるデータ型」を参照してください。 |