-
@Documented @Retention(value=RUNTIME) @Target(value=METHOD) public @interface Action
TheAction
annotation allows explicit association of a WS-AddressingAction
message addressing property withinput
,output
, andfault
messages of the mapped WSDL operation.This annotation can be specified on each method of a service endpoint interface. For such a method, the mapped operation in the generated WSDL's
wsam:Action
attribute on the WSDLinput
,output
andfault
messages of the WSDLoperation
is based upon which attributes of theAction
annotation have been specified. For the exact computation ofwsam:Action
values for the messages, refer to the algorithm in the JAX-WS specification.Example 1: Specify explicit values for
Action
message addressing property forinput
andoutput
messages.@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; } }
The generated WSDL looks like:<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>
Example 2: Specify explicit value for
Action
message addressing property for only theinput
message. Thewsam:Action
values for the WSDLoutput
message are computed using the algorithm in the JAX-WS specification.@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; } }
The generated WSDL looks like:<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>
It is legitimate to specify an explicit value forAction
message addressing property foroutput
message only. In this case,wsam:Action
value for the WSDLinput
message is computed using the algorithm in the JAX-WS specification.Example 3: See
FaultAction
annotation for an example of how to specify an explicit value forAction
message addressing property for thefault
message.- Since:
- JAX-WS 2.1
- See Also:
FaultAction
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element and Description FaultAction[]
fault
Explicit value of the WS-AddressingAction
message addressing property for thefault
message(s) of the operation.String
input
Explicit value of the WS-AddressingAction
message addressing property for theinput
message of the operation.String
output
Explicit value of the WS-AddressingAction
message addressing property for theoutput
message of the operation.
-
-
-
Element Detail
-
input
public abstract String input
Explicit value of the WS-AddressingAction
message addressing property for theinput
message of the operation.- Default:
- ""
-
output
public abstract String output
Explicit value of the WS-AddressingAction
message addressing property for theoutput
message of the operation.- Default:
- ""
-
fault
public abstract FaultAction[] fault
Explicit value of the WS-AddressingAction
message addressing property for thefault
message(s) of the operation. Each exception that is mapped to a fault and requires an explicit WS-AddressingAction
message addressing property, needs to be specified as a value in this property usingFaultAction
annotation.- Default:
- {}
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/xml/ws/action.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.