@Documented @Retention(value=RUNTIME) @Target(value=METHOD) public @interface Action
Action注釈を使用すると、WS-AddressingのActionメッセージ・アドレス指定プロパティを、マッピングされたWSDL操作のinput、output、およびfaultメッセージに明示的に関連付けることができます。
この注釈は、サービス端点インタフェースの各メソッドで指定できます。このようなメソッドでは、WSDL operationのWSDL input、output、およびfaultメッセージで生成されたWSDLのwsam:Action属性内にあるマッピングされた操作は、Action注釈のどの属性が指定されているかによって異なります。メッセージのwsam:Action値の正確な計算については、JAX-WS仕様のアルゴリズムを参照してください。
例1: inputおよびoutputメッセージに対応する、Actionメッセージ・アドレス指定プロパティの明示的な値を指定します。
@WebService(targetNamespace="http://example.com/numbers")
public class AddNumbersImpl {
@Action(
input="http://example.com/inputAction",
output="http://example.com/outputAction")
public int addNumbers(int number1, int number2) {
return number1 + number2;
}
}
生成されたWSDLは次のようになります。
<definitions targetNamespace="http://example.com/numbers" ...>
...
<portType name="AddNumbersPortType">
<operation name="AddNumbers">
<input message="tns:AddNumbersInput" name="foo"
wsam:Action="http://example.com/inputAction"/>
<output message="tns:AddNumbersOutput" name="bar"
wsam:Action="http://example.com/outputAction"/>
</operation>
</portType>
...
</definitions>
例2: inputメッセージにのみ対応する、Actionメッセージ・アドレス指定プロパティの明示的な値を指定します。WSDL outputメッセージのwsam:Action値は、JAX-WS仕様のアルゴリズムを使用して計算されます。
@WebService(targetNamespace="http://example.com/numbers")
public class AddNumbersImpl {
@Action(input="http://example.com/inputAction")
public int addNumbers(int number1, int number2) {
return number1 + number2;
}
}
生成されたWSDLは次のようになります。
<definitions targetNamespace="http://example.com/numbers" ...>
...
<portType name="AddNumbersPortType">
<operation name="AddNumbers">
<input message="tns:AddNumbersInput" name="foo"
wsam:Action="http://example.com/inputAction" />
<output message="tns:AddNumbersOutput" name="bar"
wsam:Action="http://example.com/numbers/AddNumbersPortType/AddNumbersResponse"/>
</operation>
</portType>
...
</definitions>
outputメッセージにのみ対応する、Actionメッセージ指定プロパティの明示的な値を指定してもかまいません。このような場合、WSDL inputメッセージのwsam:Action値は、JAX-WS仕様のアルゴリズムを使用して計算されます。
例3: faultメッセージに対応するActionメッセージ指定プロパティの明示的な値を指定する方法の例については、FaultAction注釈を参照してください。
FaultActionpublic abstract String input
inputメッセージに対応する、WS-AddressingのActionメッセージ・アドレス指定プロパティの明示的な値です。public abstract String output
outputメッセージに対応する、WS-AddressingのActionメッセージ・アドレス指定プロパティの明示的な値です。public abstract FaultAction[] fault
faultメッセージに対応する、WS-AddressingのActionメッセージ・アドレス指定プロパティの明示的な値です。フォルトにマッピングされ、明示的なWS-Addressing Actionメッセージ・アドレス指定プロパティを必要とする例外は、それぞれFaultAction注釈を使用してこのプロパティの値として指定される必要があります。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.