Fabian Ohler created CXF-8291:
---------------------------------

             Summary: Wrong wsa:Action for faults
                 Key: CXF-8291
                 URL: https://issues.apache.org/jira/browse/CXF-8291
             Project: CXF
          Issue Type: Bug
          Components: Tooling, WS-* Components
    Affects Versions: 3.3.6
            Reporter: Fabian Ohler


When using WS-Addressing, the wrong wsa:Action is default-generated in case of 
faults: The URI contains the name of the element used for the fault 
(/definition/types/schema/element/@name) instead of the fault name 
(/definition/porttype/operation/fault/@name).

Relevant chapter in the spec: 
[https://www.w3.org/TR/ws-addr-metadata/#defactionwsdl11]

The behaviour can be observed using the ws_addressing sample project, where the 
generated fault action is
{code:xml}
<Action 
xmlns="http://www.w3.org/2005/08/addressing";>http://apache.org/hello_world_soap_http/Greeter/pingMe/Fault/faultDetail</Action>{code}
but should be
{code:xml}
<Action 
xmlns="http://www.w3.org/2005/08/addressing";>http://apache.org/hello_world_soap_http/Greeter/pingMe/Fault/pingMeFault</Action>{code}
Explicitly setting the Action, i.e.
{code:xml}
<wsdl:fault name="pingMeFault" message="tns:pingMeFault"  
wsam:Action="http://apache.org/hello_world_soap_http/Greeter/pingMe/Fault/pingMeFault";
 xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata"/>
{code}
doesn't influence this behaviour even though it leads to additional generated 
code:
{code:xml}
@Action(fault = {@FaultAction(className = PingMeFault.class, value = 
"http://apache.org/hello_world_soap_http/Greeter/pingMe/Fault/pingMeFault";)}){code}
 

Possibly related issues: CXF-2827, CXF-2831, CXF-8146



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to