@DocumentedSE @RetentionSE(valueSE=RUNTIMESE) @TargetSE(valueSE=METHODSE) public @interface Action
Action アノテーションを使用すると、WS-Addressing Action メッセージアドレス指定プロパティをマップされた WSDL 操作の input、output、fault メッセージに明示的に関連付けることができます。 このアノテーションは、サービスエンドポイントインターフェースの各メソッドで指定できます。このような方法の場合、WSDL operation の WSDL input、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 メッセージアドレス指定プロパティに明示的な値を指定します。WSDL output メッセージの 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 メッセージアドレス指定プロパティに明示的な値を指定することは正当です。この場合、WSDL input メッセージの wsam:Action 値は、Jakarta XML Web Services 仕様のアルゴリズムを使用して計算されます。 例 3: fault メッセージの Action メッセージアドレス指定プロパティに明示的な値を指定する方法の例については、FaultAction アノテーションを参照してください。
FaultActionpublic abstract StringSE input
input メッセージの WS-Addressing Action メッセージアドレス指定プロパティの明示的な値。input メッセージの Action メッセージアドレス指定プロパティ public abstract StringSE output
output メッセージの WS-Addressing Action メッセージアドレス指定プロパティの明示的な値。output メッセージの Action メッセージアドレス指定プロパティ public abstract FaultAction[] fault
fault メッセージの WS-Addressing Action メッセージアドレス指定プロパティの明示的な値。障害にマップされ、明示的な WS-Addressing Action メッセージアドレス指定プロパティを必要とする各例外は、FaultAction アノテーションを使用してこのプロパティの値として指定する必要があります。fault メッセージの Action メッセージアドレス指定プロパティ Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.