You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Christian Schneider (JIRA)" <ji...@apache.org> on 2009/11/03 14:07:52 UTC

[jira] Issue Comment Edited: (CAMEL-2129) Misleading exception when a Camel-CXF Service call times out (Null InputStream is not a valid argument)

    [ https://issues.apache.org/activemq/browse/CAMEL-2129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=55143#action_55143 ] 

Christian Schneider edited comment on CAMEL-2129 at 11/3/09 5:06 AM:
---------------------------------------------------------------------

The same exception appears if the jms server is not started. In this case I would expect an exception like "JMS Component could not connect to jms server". At least shortly after this exception an info message is logged that says "Could not refresh JMS Connection".

Stack trace:
-- 
03.11.2009 14:03:42 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
WARNUNG: Interceptor has thrown exception, unwinding now
java.lang.IllegalArgumentException: Null InputStream is not a valid argument
	at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:614)
	at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:324)
	at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:879)
	at org.apache.cxf.interceptor.StaxInInterceptor.handleMessage(StaxInInterceptor.java:83)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:664)
	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.handleResponse(CamelConduit.java:191)
	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.commitOutputMessage(CamelConduit.java:183)
	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.doClose(CamelConduit.java:153)
	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:185)
	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
	at $Proxy63.readCustomersByName(Unknown Source)
	at net.enbw.endur.AppModule.doBusiness(AppModule.java:25)
	at net.enbw.endur.AppMain.main(AppMain.java:23)
14:05:09,213 INFO  org.springframework.jms.listener.DefaultMessageListenerContainer refreshConnectionUntilSuccessful - Could not refresh JMS Connection - retrying in 100000 ms: javax.jms.JMSException: Failed to connect to the server at tcp://localhost:7222


      was (Author: chris@die-schneider.net):
    The same exception appears if the jms server is not started. In this case I would expect an exception like "JMS Component could not connect to jms server"
  
> Misleading exception when a Camel-CXF Service call times out (Null InputStream is not a valid argument)
> -------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-2129
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-2129
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-cxf
>    Affects Versions: 2.0.0
>            Reporter: Christian Schneider
>
> We use camel-cxf and camel-jms to offer CXF services over SOAP/JMS.
> When the client calls the service by using the generated stub code and a timeout occurs I get an exception "Null InputStream is not a valid argument". I would rather expect something like "Timeout calling service". Full stack trace is attached below.
> The routing config is attached below.
> <client id="customerService" xmlns="http://cxf.apache.org/jaxws"
> xmlns:service="http://examples.etg.services.enbw.net/"
>   serviceName="service:CustomerService"
>   endpointName="service:CustomerServiceEndpoint"
>   serviceClass="net.enbw.services.etg.examples.customerservice.CustomerServiceV1"
>   address="camel://direct:client">
> </client>
> <camelContext id="camelContext" trace="false" xmlns="http://camel.apache.org/schema/spring">
>   <route>
>     <from uri="direct:client"/>
>     <to uri="jms://queue.net.enbw.services.etg.examples.customerservice.CustomerService" />
>   </route>
> </camelContext>
> ------
> 03.11.2009 13:20:58 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
> WARNUNG: Interceptor has thrown exception, unwinding now
> java.lang.IllegalArgumentException: Null InputStream is not a valid argument
> 	at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:614)
> 	at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:324)
> 	at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:879)
> 	at org.apache.cxf.interceptor.StaxInInterceptor.handleMessage(StaxInInterceptor.java:83)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> 	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:664)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.handleResponse(CamelConduit.java:191)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.commitOutputMessage(CamelConduit.java:183)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.doClose(CamelConduit.java:153)
> 	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:185)
> 	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
> 	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
> 	at $Proxy63.readCustomersByName(Unknown Source)
> 	at net.enbw.endur.AppModule.doBusiness(AppModule.java:34)
> 	at net.enbw.endur.AppMain.main(AppMain.java:23)
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Null InputStream is not a valid argument
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)
> 	at $Proxy63.readCustomersByName(Unknown Source)
> 	at net.enbw.endur.AppModule.doBusiness(AppModule.java:34)
> 	at net.enbw.endur.AppMain.main(AppMain.java:23)
> Caused by: java.lang.IllegalArgumentException: Null InputStream is not a valid argument
> 	at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:614)
> 	at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:324)
> 	at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:879)
> 	at org.apache.cxf.interceptor.StaxInInterceptor.handleMessage(StaxInInterceptor.java:83)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> 	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:664)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.handleResponse(CamelConduit.java:191)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.commitOutputMessage(CamelConduit.java:183)
> 	at org.apache.camel.component.cxf.transport.CamelConduit$CamelOutputStream.doClose(CamelConduit.java:153)
> 	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:185)
> 	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:478)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:308)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:260)
> 	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
> 	... 3 more

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