@Documented @Retention(value=RUNTIME) @Target(value=METHOD) public @interface FaultAction
FaultAction
注释是用在
Action
注释允许WS-Addressing
Action
消息寻址与WSDL操作映射从异常类的
fault
信息产权明确的关联。
在生成的WSDL操作映射为className
班fault
消息的wsam:Action
属性值等于在FaultAction
对应的值。对故障信息的wsam:Action
值的精确计算,是指在JAX-WS规范算法。
例1:指定Action
消息寻址的input
产权明确的价值观,output
和fault
消息如果java方法抛出只有一个服务特定的异常。
@ webservice(targetNamespace =“http:/ /例子。COM /数字”)公共课addnumbersimpl {@行动(故障= {@ FaultAction(ClassName = addnumbersexception.class,值=“http:/ /例子。COM / faultaction”)})public int addnumbers(int number1,int 2)把addnumbersexception {返回数+ 2;}}生成的WSDL的样子:
<定义> targetNamespace =”http://example.com/numbers”…… <端口类型名称=“addnumbersporttype”> <操作名称=“addnumbers”> … <故障信息=“tns:addnumbersexception”name=“addnumbersexception” 方便:行动=“http://example.com/faultaction” / >< /操作>< /端口类型>…< /定义> 故障信息=“tns:addnumbersexception”name=“addnumbersexception” 操作名称=“addnumbers”> 端口类型名称=“addnumbersporttype”> 定义>
例2:下面是一个例子,说明如果Action
消息寻址服务特定的例外性的显性价值是不存在的。
@ webservice(targetNamespace =“http:/ /例子。COM /数字”)公共课addnumbersimpl {public int addnumbers(int number1,int 2)把addnumbersexception {返回数+ 2;}}生成的WSDL的样子:
<定义> targetNamespace =”http://example.com/numbers”…… <端口类型名称=“addnumbersporttype”> <操作名称=“addnumbers”> … <故障信息=“tns:addnumbersfault”name=“invalidnumbers” 方便:行动=“http://example.com/numbers/addnumbersporttype/addnumbers/fault/addnumbersexception” / >< /操作>< /端口类型>…< /定义> 故障信息=“tns:addnumbersfault”name=“invalidnumbers” 操作名称=“addnumbers”> 端口类型名称=“addnumbersporttype”> 定义>
例3:下面是一个例子,说明如何指定Action
消息寻址属性如果java方法抛出一个以上的特定服务异常明确的价值观。
@ webservice(targetNamespace =“http:/ /例子。COM /数字”)公共课addnumbersimpl {@行动(故障= {@ FaultAction(ClassName = addnumbersexception.class,值=“http:/ /例子。COM / addfaultaction”),@ FaultAction(ClassName = TooBigNumbersException.class,值=“http:/ /例子。COM / toobigfaultaction”)})public int addnumbers(int number1,int 2)把addnumbersexception,toobignumbersexception {返回数+ 2;}}生成的WSDL的样子:
<定义> targetNamespace =”http://example.com/numbers”…… <端口类型名称=“addnumbersporttype”> <操作名称=“addnumbers”> … <故障信息=“tns:addnumbersfault”name=“addnumbersexception” 方便:行动=“http://example.com/addfaultaction” / > <故障信息=“tns:toobignumbersfault”name=“toobignumbersexception” 方便:行动=“http://example.com/toobigfaultaction” / >< /操作>< /端口类型>…< /定义> 故障信息=“tns:toobignumbersfault”name=“toobignumbersexception” 故障信息=“tns:addnumbersfault”name=“addnumbersexception” 操作名称=“addnumbers”> 端口类型名称=“addnumbersporttype”> 定义>
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.