NullPointerException when trying to find WS-Addressing Action
-------------------------------------------------------------

                 Key: CXF-2546
                 URL: https://issues.apache.org/jira/browse/CXF-2546
             Project: CXF
          Issue Type: Bug
          Components: WS-* Components
    Affects Versions: 2.2.4
            Reporter: John Hite
            Priority: Minor


I have wsdl operations that look like this

<wsdl:operation name="Ping">
      <wsdl:input wsam:Action="Test.Services/IProxyService/Ping" 
message="tns:IProxyService_Ping_InputMessage" />
      <wsdl:output wsam:Action="Test.Services/IProxyService/PingResponse" 
message="tns:IProxyService_Ping_OutputMessage" />
  </wsdl:operation>

wsam=http://www.w3.org/2007/05/addressing/metadata

If I try to run the client with this wsdl, I get a NullPointerException

IProxyServiceClient:
     [java] Invoking ping...
     [java] Nov 17, 2009 4:15:58 PM org.apache.cxf.phase.PhaseInterceptorChain 
doIntercept
     [java] WARNING: Interceptor has thrown exception, unwinding now
     [java] java.lang.NullPointerException
     [java]     at 
org.apache.cxf.ws.addressing.ContextUtils.getAction(ContextUtils.java:803)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.getActionFromInputMessage(MAPAggregator.java:438)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.getActionUri(MAPAggregator.java:521)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.assembleGeneric(MAPAggregator.java:427)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.aggregate(MAPAggregator.java:396)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.mediate(MAPAggregator.java:342)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.handleMessage(MAPAggregator.java:158)
     [java]     at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
     [java]     at 
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
     [java]     at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
     [java]     at $Proxy39.ping(Unknown Source)
     [java]     at 
services.test.IProxyService_CustomBindingIProxyService_Client.main(IProxyService_CustomBindingIProxyService_Client.java:56)
     [java] Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: 
Fault string, and possibly fault code, not set
     [java]     at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)
     [java]     at $Proxy39.ping(Unknown Source)
     [java]     at 
services.test.IProxyService_CustomBindingIProxyService_Client.main(IProxyService_CustomBindingIProxyService_Client.java:56)
     [java] Caused by: java.lang.NullPointerException
     [java]     at 
org.apache.cxf.ws.addressing.ContextUtils.getAction(ContextUtils.java:803)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.getActionFromInputMessage(MAPAggregator.java:438)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.getActionUri(MAPAggregator.java:521)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.assembleGeneric(MAPAggregator.java:427)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.aggregate(MAPAggregator.java:396)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.mediate(MAPAggregator.java:342)
     [java]     at 
org.apache.cxf.ws.addressing.MAPAggregator.handleMessage(MAPAggregator.java:158)
     [java]     at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
     [java]     at 
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
     [java]     at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
     [java]     ... 2 more
     [java] Java Result: 1

if I switch the namespace prefix of the actions to wsaw, where 
wsaw=http://www.w3.org/2006/05/addressing/wsdl, everything works.

I'll upload a sample wsdl and ant build file. It will generate a client, server 
and ant file.



-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to