parameter-xml および return-xml マップの適用
ユーザが作成できるマップには parameter-xml と return-xml の 2 種類があります。parameter-xml マップは、XML 値からメソッド、コールバック、またはコールバック ハンドラのパラメータへのマッピング(またはその逆)をしたいときに使用し、return-xml マップは戻り値のマッピングに使用します。
次の表にどの場合にどのマップを使うかを示します。
インタフェース メンバー |
受信または送信 |
使用するマップの種類 |
---|---|---|
サービス(JWS ファイル)のメソッド |
受信(クライアントから) |
parameter-xml |
|
送信(クライアントへ) |
return-xml |
サービス(JWS ファイル)のコールバック |
受信(クライアントから) |
return-xml |
|
送信(クライアントへ) |
parameter-xml |
コントロール(CTRL ファイル)のメソッド |
受信(リソースから) |
return-xml |
|
送信(リソースへ) |
parameter-xml |
サービス(JWS ファイル)のコールバック ハンドラ |
受信(リソースから) |
parameter-xml |
|
送信(リソースへ) |
return-xml |
受信メッセージの処理と送信メッセージの成型についての詳細は、特定の形式の受信 XML メッセージを処理するにはおよび送信 XML メッセージを特定の形式に適合させるにはを参照してください。
parameter-xml でパラメータをマッピングする場合は、XML 値をパラメータ名で置き換えます。戻り値をマッピングする場合は、XML 値を「return」という語で置き換えます。以下に、parameter-xml マップと return-xml マップの例を示します。置き換えられた箇所を太字で示します。
詳細については、@jws:parameter-xml タグ および @jws:return-xml タグを参照してください。
/** * @jws:operation * @jws:parameter-xml xml-map:: * <getInventory> * <queryData> * <part>{serialNumber}</part> * </queryData> * </getInventory> * :: * @jws:return-xml xml-map:: * <getInventoryResponse> * <queryData> * <inventoryCount>{return}</inventoryCount> * </queryData> * </getInventoryReponse> * * :: */ public int getInventory(String serialNumber) {...}
注意 : ルート タグ(前出の例の <queryData> タグなど)は、特定の JWS ファイル内のすべてのマップの中でユニークでなければなりません。このため、名前がメソッド名と一致するタグの中にマップを配置するようにすることをお勧めします(つまりはメソッドもユニークでなければならない)。