You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Fabian Ohler (Jira)" <ji...@apache.org> on 2020/05/28 11:25:00 UTC

[jira] [Created] (CXF-8291) Wrong wsa:Action for faults

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)