Hi Willem, 
Thanks for your answer.
I am using camel 1.4.0 and cxf  2.1.2.
When I try to invoke web service with a client proxy

<code>
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.getInInterceptors().add(new LoggingInInterceptor());
factory.getOutInterceptors().add(new LoggingOutInterceptor());
factory.setServiceClass(Client.class);
factory.setAddress(props.getProperty("http://localhost:8000/service/client";));  
                
Client proxy = (Client) factory.create();
Proxy.soldeClient("1000");
</code>

I have the following error :
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError:
org.apache.cxf.helpers.LoadingByteArrayOutputStream.getRawBytes()[B
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1852)
        at
org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
        at 
org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
        at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
        at $Proxy58.soldeClient(Unknown Source)
        at manager.SimuClient.sendRequest(SimuClient.java:75)
        at manager.Manager.simulateRequest(Manager.java:120)
        at gui.services.SimulateAction.actionPerformed(SimulateAction.java:30)
        at 
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
        at
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
        at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
        at 
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
Best Regards,
Mta38



willem.jiang wrote:
> 
> Hi
> 
> It's looks like a CXF HTTPConduit bug, which version of CXF and Camel
> are you using?
> Can you invoke the service with a normal CXF client ?
> 
> Willem
> 
> mta38 wrote:
>> Hi all,
>> I have some trouble with Camel rout to cxf endpoint.
>> I have implemented a web service and publish it using cxf api. The
>> following
>> snipset is my code to start web service:
>> 
>> JaxWsServerFactoryBean sf = new JaxWsServerFactoryBean();  
>> sf.setServiceBean(new ClientFixeImpl());
>> address = props.getProperty("http://localhost:8000/service/client";);
>> sf.setAddress(address);
>> service = sf.create();
>> 
>> The service is published; I can invoke it in an internet Browser. But
>> when I
>> try to send a message to that web service using a camel route :
>> 
>> <camel:camelContext id="camelContext">
>>      <camel:route>
>>              <camel:from uri="direct:start"/>
>>              <camel:to uri="cxf:bean:endpointFixeProvider"/>
>>              </camel:route>
>> </camel:camelContext>
>> 
>> Where " endpointFixeProvider" is defined like that :
>> 
>> 
>> <cxf:cxfEndpoint id="endpointFixeProvider"
>>              serviceClass="org.example.clientfixe.ClientFixe"
>>              address="http://localhost:8001/ClientFixeSOAP";
>>              wsdlURL="wsdl/ClientFixe-1.0.wsdl" 
>> endpointName="s:ClientFixeSOAP"
>>              serviceName="s:ClientFixe"
>>              xmlns:s="http://www.example.org/ClientFixe/";>
>>              <cxf:properties>
>>                       <entry key="dataFormat" value="MESSAGE"></entry>
>>              </cxf:properties>
>>              
>>      </cxf:cxfEndpoint>
>> 
>> 
>> I have the following error:
>> INFO: Interceptor has thrown exception, unwinding now
>> java.lang.IllegalStateException: Already connected
>>      at
>> java.net.HttpURLConnection.setFixedLengthStreamingMode(HttpURLConnection.java:100)
>>      at
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.thresholdNotReached(HTTPConduit.java:1774)
>>      at
>> org.apache.cxf.io.AbstractThresholdOutputStream.close(AbstractThresholdOutputStream.java:99)
>>      at
>> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1859)
>>      at
>> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
>>      at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
>>      at
>> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
>>      at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
>>      at
>> org.apache.camel.component.cxf.invoker.CxfClient.invokeWithMessageStream(CxfClient.java:132)
>>      at
>> org.apache.camel.component.cxf.invoker.CxfClient.dispatch(CxfClient.java:75)
>>      at
>> org.apache.camel.component.cxf.CxfProducer.process(CxfProducer.java:251)
>>      at
>> org.apache.camel.component.cxf.CxfProducer.process(CxfProducer.java:176)
>>      at
>> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:43)
>>      at
>> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>>      at
>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>>      at
>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>>      at
>> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>>      at
>> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>>      at
>> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>>      at
>> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>>      at
>> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>>      at
>> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:47)
>>      at
>> org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:149)
>>      at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:86)
>>      at
>> org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:84)
>>      at
>> org.apache.camel.impl.DefaultProducerTemplate.sendBodyAndHeaders(DefaultProducerTemplate.java:143)
>>      at
>> org.apache.camel.impl.DefaultProducerTemplate.sendBodyAndHeaders(DefaultProducerTemplate.java:139)
>>      at
>> adapter.camel.CamelServiceAdapter.sendSync(CamelServiceAdapter.java:147)
>>      at org.example.client.ClientImpl.soldeClient(ClientImpl.java:91)
>> 
>> 
>> Is someone have an idea? :confused:
>> Thanks in Advance,
>> Mta38
>> 
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/%22Already-Connected%22-message-when-try-to-route-to-cxf-web-service-tp21028941s22882p21029565.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to