cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Shakirin <ashaki...@talend.com>
Subject RE: Need help with JAX-WS client "Could not send Message error"
Date Sun, 28 Jul 2013 12:35:05 GMT
Hi,

I guess the problem is that your WSDL doesn't contain address in port element and address
is not explicitly configured in the service as well.
CXF doesn't know address to send the message.

Regards,
Andrei.

> -----Original Message-----
> From: Sachin Nikam [mailto:sknikam@gmail.com]
> Sent: Freitag, 26. Juli 2013 18:10
> To: users@cxf.apache.org
> Subject: Re: Need help with JAX-WS client "Could not send Message error"
> 
> Here is the stack trace
> ##########################################
> 
> org.apache.cxf.interceptor.Fault: Could not send Message.
>         at
> org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(Mes
> sageSenderInterceptor.java:48)
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptor
> Chain.java:271)
>         at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319)
>         at
> org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
>         at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:133)
>         at $Proxy79.retrieveOrder(Unknown Source)
>         at
> com.expedia.om.odr.retrieve.OrderServiceClient.process(OrderServiceClien
> t.java:45)
>         at
> com.expedia.om.odr.retrieve.RetrieveOrderProcessor.process(RetrieveOrd
> erProcessor.java:70)
>         at
> com.expedia.om.odr.retrieve.RetrieveService.retrieveOrder(RetrieveServic
> e.java:44)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> ava:57)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:601)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractI
> nvoker.java:180)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
> 96)
>         at
> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWS
> MethodInvoker.java:178)
>         at
> org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.j
> ava:68)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
> 75)
>         at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerI
> nterceptor.java:58)
>         at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExec
> utor.java:37)
>         at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(Servic
> eInvokerInterceptor.java:107)
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptor
> Chain.java:271)
>         at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiation
> Observer.java:121)
>         at
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTP
> Destination.java:239)
>         at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(Servlet
> Controller.java:223)
>         at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.j
> ava:203)
>         at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.j
> ava:137)
>         at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpring
> Servlet.java:158)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(Abstra
> ctHTTPServlet.java:243)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPS
> ervlet.java:163)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPS
> ervlet.java:219)
>         at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:452)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
> 138)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:540)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.ja
> va:213)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.j
> ava:1083)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:379)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.jav
> a:175)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.ja
> va:1017)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
> 136)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHa
> ndlerCollection.java:258)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.
> java:109)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
> va:97)
>         at
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.jav
> a:317)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
> va:97)
>         at org.eclipse.jetty.server.Server.handle(Server.java:445)
>         at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:260)
>         at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:225)
>         at
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnectio
> n.java:358)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.j
> ava:596)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.ja
> va:527)
>         at java.lang.Thread.run(Thread.java:722)
> Caused by: java.io.IOException: java.net.URISyntaxException: Invalid
> address. Endpoint address cannot be null. at index
> 0: <null>
>         at
> org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:460)
>         at
> org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(Mes
> sageSenderInterceptor.java:46)
>         ... 59 more
> Caused by: java.net.URISyntaxException: Invalid address. Endpoint address
> cannot be null. at index 0: <null>
>         at
> org.apache.cxf.transport.http.HTTPConduit.getURI(HTTPConduit.java:710)
>         at
> org.apache.cxf.transport.http.HTTPConduit.getURI(HTTPConduit.java:693)
>         at
> org.apache.cxf.transport.http.HTTPConduit.setupURI(HTTPConduit.java:649)
>         at
> org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:458)
>         ... 60 more
> 213019 [qtp1803965313-63] WARN
> org.apache.cxf.phase.PhaseInterceptorChain
>  - Application {urn:expedia:om:order:v1}Order
> Service#{urn:expedia:om:order:v1}retrieveOrder has thrown exception,
> unwinding now
> org.apache.cxf.interceptor.Fault: Could not send Message.
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.
> java:162)
>         at
> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJA
> XWSMethodInvoker.java:213)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
> 128)
>         at
> org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.invoke(AbstractJAXWS
> MethodInvoker.java:178)
>         at
> org.apache.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.j
> ava:68)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
> 75)
>         at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerI
> nterceptor.java:58)
>         at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166)
>         at
> org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExec
> utor.java:37)
>         at
> org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(Servic
> eInvokerInterceptor.java:107)
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptor
> Chain.java:271)
>         at
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiation
> Observer.java:121)
>         at
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTP
> Destination.java:239)
>         at
> org.apache.cxf.transport.servlet.ServletController.invokeDestination(Servlet
> Controller.java:223)
>         at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.j
> ava:203)
>         at
> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.j
> ava:137)
>         at
> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpring
> Servlet.java:158)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(Abstra
> ctHTTPServlet.java:243)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPS
> ervlet.java:163)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>         at
> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPS
> ervlet.java:219)
>         at
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:452)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
> 138)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:540)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.ja
> va:213)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.j
> ava:1083)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:379)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.jav
> a:175)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.ja
> va:1017)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:
> 136)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHa
> ndlerCollection.java:258)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.
> java:109)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
> va:97)
>         at
> org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.jav
> a:317)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja
> va:97)
>         at org.eclipse.jetty.server.Server.handle(Server.java:445)
>         at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:260)
>         at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:225)
>         at
> org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnectio
> n.java:358)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.j
> ava:596)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.ja
> va:527)
>         at java.lang.Thread.run(Thread.java:722)
> Caused by: javax.xml.ws.WebServiceException: Could not send Message.
>         at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:144)
>         at $Proxy79.retrieveOrder(Unknown Source)
>         at
> com.expedia.om.odr.retrieve.OrderServiceClient.process(OrderServiceClien
> t.java:45)
>         at
> com.expedia.om.odr.retrieve.RetrieveOrderProcessor.process(RetrieveOrd
> erProcessor.java:70)
>         at
> com.expedia.om.odr.retrieve.RetrieveService.retrieveOrder(RetrieveServic
> e.java:44)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.j
> ava:57)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:601)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractI
> nvoker.java:180)
>         at
> org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
> 96)
>         ... 42 more
> Caused by: java.io.IOException: java.net.URISyntaxException: Invalid
> address. Endpoint address cannot be null. at index
> 0: <null>
>         at
> org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:460)
>         at
> org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(Mes
> sageSenderInterceptor.java:46)
>         at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptor
> Chain.java:271)
>         at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366)
>         at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319)
>         at
> org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
>         at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:133)
>         ... 52 more
> Caused by: java.net.URISyntaxException: Invalid address. Endpoint address
> cannot be null. at index 0: <null>
>         at
> org.apache.cxf.transport.http.HTTPConduit.getURI(HTTPConduit.java:710)
>         at
> org.apache.cxf.transport.http.HTTPConduit.getURI(HTTPConduit.java:693)
>         at
> org.apache.cxf.transport.http.HTTPConduit.setupURI(HTTPConduit.java:649)
>         at
> org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:458)
>         ... 60 more
> 
> 
> On Fri, Jul 26, 2013 at 8:51 AM, Sachin Nikam <sknikam@gmail.com> wrote:
> 
> > Here are the details. Thanks for your help.
> > private static final QName SERVICE_NAME = new
> > QName("DeployedServiceNS", "DeployedService");
> > ########################################
> > <?xml version="1.0" ?>
> > <wsdl:definitions targetNamespace="DeployedServiceNS"
> >         xmlns:messages="DeployedServiceNS2"
> > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> >  xmlns:tns="DeployedServiceNS"
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> >  xmlns:xs="http://www.w3.org/2001/XMLSchema"
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >  xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/
> > http://schemas.xmlsoap.org/wsdl/">
> >  <wsdl:types>
> >
> > <xs:schema attributeFormDefault="unqualified"
> > elementFormDefault="unqualified"
> targetNamespace="DeployedServiceNS"
> > version="1.0.0"         xmlns:messages="DeployedServiceNS2" xmlns:soap="
> > http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="DeployedService"
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="
> > http://www.w3.org/2001/XMLSchema" xmlns:xsd="
> > http://www.w3.org/2001/XMLSchema" xmlns:xsi="
> > http://www.w3.org/2001/XMLSchema-instance">
> >  <xs:import namespace="DeployedServiceNS2"
> > schemaLocation="DeployedServiceNS2.xsd"/>
> >  </xs:schema>
> >
> > </wsdl:types>
> >   <wsdl:message name="RetrieveRequest">
> >     <wsdl:part element="messages:RetrieveRequest"
> name="RetrieveRequest">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:message name="RetrieveResponse">
> >     <wsdl:part element="messages:RetrieveResponse"
> name="RetrieveResponse">
> >     </wsdl:part>
> >   </wsdl:message>
> >   <wsdl:portType name="SVC">
> >     <wsdl:operation name="retrieve">
> >       <wsdl:input message="tns:RetrieveRequest">
> >     </wsdl:input>
> >       <wsdl:output message="tns:RetrieveResponse">
> >     </wsdl:output>
> >     </wsdl:operation>
> >   </wsdl:portType>
> >   <wsdl:binding name="DeployedServiceSOAP" type="tns:SVC">
> >     <soap:binding style="document" transport="
> > http://schemas.xmlsoap.org/soap/http"></soap:binding>
> >     <wsdl:operation name="retrieveXXX">
> >       <soap:operation
> > soapAction="DeployedServiceNS/retrieveXXX"></soap:operation>
> >       <wsdl:input>
> >         <soap:body parts="RetrieveRequest" use="literal"></soap:body>
> >       </wsdl:input>
> >       <wsdl:output>
> >         <soap:body parts="RetrieveResponse" use="literal"></soap:body>
> >       </wsdl:output>
> >     </wsdl:operation>
> >   </wsdl:binding>
> >   <wsdl:service name="DeployedService">
> >     <wsdl:port binding="tns:DeployedServiceSOAP"
> name="DeployedService">
> >     </wsdl:port>
> >   </wsdl:service>
> > </wsdl:definitions>
> >
> >
> > On Fri, Jul 26, 2013 at 12:36 AM, Freeman Fang
> <freeman.fang@gmail.com>wrote:
> >
> >> Hi,
> >>
> >> What's your wsdl looks like, and what's the SERVICE_NAME you
> >> specified here?
> >> -------------
> >> Freeman(Yue) Fang
> >>
> >> Red Hat, Inc.
> >> FuseSource is now part of Red Hat
> >> Web: http://fusesource.com | http://www.redhat.com/
> >> Twitter: freemanfang
> >> Blog: http://freemanfang.blogspot.com
> >> http://blog.sina.com.cn/u/1473905042
> >> weibo: @Freeman小屋
> >>
> >>
> >>
> >> On 2013-7-26, at 下午2:41, Sachin Nikam wrote:
> >>
> >> > I am new to  apache-cxf 2.7.5 and using wsdl2java tool to generate
> >> client
> >> > code based on a wsdl.
> >> >
> >> > Here is a snippet of my code
> >> >
> >> > URL wsdlURL = new URL("DeployedServiceURL");
> >> >        DeployedService ss = new DeployedService(wsdlURL,
> SERVICE_NAME);
> >> >        SVC port = ss.getDeployedService();
> >> >        RetrieveResponse retrieve  _return =
> >> port.retrieve(retrieveRequest);
> >> >
> >> > When I invoke the method on the port, I get the following exception
> >> > ################
> >> > java.io.IOException: java.net.URISyntaxException: Invalid address.
> >> Endpoint
> >> > address cannot be null. at index 0: <null> ###############
> >> >
> >> > This error is similar to the one mentioned here
> >> >
> >> http://stackoverflow.com/questions/3007793/cxf-client-webservice-ping
> >> -has-thrown-exception-could-not-send-message-invalid?rq=1
> >> >
> >> > but the solution here is not relevant for me.
> >> > Can anybody point me to the right direction?
> >>
> >>
> >
Mime
View raw message