パッケージ jakarta.xml.ws
アノテーション型 Action
@DocumentedSE @RetentionSE(RUNTIMESE) @TargetSE(METHODSE) public @interface Action
Action
アノテーションを使用すると、WS-AddressingAction
メッセージアドレス指定プロパティをマップされた WSDL 操作のinput
、output
、fault
メッセージに明示的に関連付けることができます。このアノテーションは、サービスエンドポイントインターフェースの各メソッドで指定できます。このような方法の場合、WSDL
operation
の WSDLinput
、output
、fault
メッセージで生成された WSDL のwsam:Action
属性でマップされた操作は、Action
アノテーションのどの属性が指定されているかに基づいています。メッセージのwsam:Action
値の正確な計算については、Jakarta XML Web Services 仕様のアルゴリズムを参照してください。例 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" <b>wsam:Action="http://example.com/inputAction"</b>/> <output message="tns:AddNumbersOutput" name="bar" <b>wsam:Action="http://example.com/outputAction"</b>/> </operation> </portType> ... </definitions>
例 2:
input
メッセージのみのAction
メッセージアドレス指定プロパティに明示的な値を指定します。WSDLoutput
メッセージのwsam:Action
値は、Jakarta XML Web Services 仕様のアルゴリズムを使用して計算されます。@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" <b>wsam:Action="http://example.com/inputAction"</b>/> <output message="tns:AddNumbersOutput" name="bar" <b>wsam:Action="http://example.com/numbers/AddNumbersPortType/AddNumbersResponse"</b>/> </operation> </portType> ... </definitions>
output
メッセージのみのAction
メッセージアドレス指定プロパティに明示的な値を指定することは正当です。この場合、WSDLinput
メッセージのwsam:Action
値は、Jakarta XML Web Services 仕様のアルゴリズムを使用して計算されます。例 3:
fault
メッセージのAction
メッセージアドレス指定プロパティに明示的な値を指定する方法の例については、FaultAction
アノテーションを参照してください。- 導入:
- 1.6、JAX-WS 2.1
- 関連事項:
FaultAction
要素の詳細
input
StringSE input
操作のinput
メッセージの WS-AddressingAction
メッセージアドレス指定プロパティの明示的な値。- 戻り値:
-
input
メッセージのAction
メッセージアドレス指定プロパティ
- デフォルト:
- ""
output
StringSE output
操作のoutput
メッセージの WS-AddressingAction
メッセージアドレス指定プロパティの明示的な値。- 戻り値:
-
output
メッセージのAction
メッセージアドレス指定プロパティ
- デフォルト:
- ""
fault
FaultAction[] fault
操作のfault
メッセージの WS-AddressingAction
メッセージアドレス指定プロパティの明示的な値。障害にマップされ、明示的な WS-AddressingAction
メッセージアドレス指定プロパティを必要とする各例外は、FaultAction
アノテーションを使用してこのプロパティの値として指定する必要があります。- 戻り値:
-
fault
メッセージのAction
メッセージアドレス指定プロパティ
- デフォルト:
- {}