Hi,

done() means set MessageExchange as DONE status and send it, you should always finish a MessageExchange with DONE status in usual case(which means no error or fault occur), no matter which MEP(message exchange pattern) you are using. close() will deactivate a component and I don't think you should use this method for your case.

Freeman
On 2010-6-14, at 下午10:58, Metallica12 wrote:


Thanks Freeman,

Can you please help me in understanding when "objServicemixClient.done" will be used and when "objServicemixClient.close" method will be used.What is the
difference between both of them?

Thanks in advance.


Freeman Fang wrote:

Hi,

IMHO you needn't close() the client,  you should use
objServicemixClient.done(messageExchange); which send DONE message to
finish one MessageExchange,  this also release thread used for this
MessageExchange.

Freeman
On 2010-6-12, at 上午1:37, Metallica12 wrote:


Hi Freeman,
Thanks for your reply.We are using sendsync coz we are having
synchronous
transactions also can you please let me know if
objServiceMixClient.close();a proper way to close the
servicemixclient or is
there any other method I can use to close the connection??

Thanks in advance


Metallica12 wrote:

Hi,

We have maximum pool size.Also I want to point one more thing,Is
objServiceMixClient.close();a proper way to close the
servicemixclient or
is there any other method I can use to close the connection??

Thanks


Freeman Fang wrote:

Hi,

Seems this error is caused by you use sendsync but run out of the
thread for concurrent test.
You may need use send instead or configure more thread for cxf se
endpoint, take a look at how to configure the thread pool[1].

[1]http://servicemix.apache.org/thread-pools.html

Freeman
On 2010-6-4, at 上午5:30, Metallica12 wrote:


Hi,

I am doing performance test on my application with 25 users.In one
particular functionality of my application i am getting an  jca
flow
error
with java.util.concurrent.TimeoutException.When I checked my logs
it
was
pointing to the location where I am trying to close the
ServiceMixClient
instance using the command  objServiceMixClient.close();.Please
note
that I
am getting this issue during concurrent users testing alone.Below
is
the log
stack that I am getting.Please help me.

| ERROR | pool-flow.seda.servicemix-cxf-se-thread-16 | JCAFlow
| cemix.jbi.nmr.flow.jca.JCAFlow 480 | Cannot destroy consumer for
component ID:172.28.1.239-128982e14d6-0:2357
java.util.concurrent.TimeoutException
     at
java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java: 211)
     at java.util.concurrent.FutureTask.get(FutureTask.java:85)
     at
org.apache.servicemix.jbi.nmr.flow.jca.JCAFlow
$Connector.stop(JCAFlow.java:705)
     at
org
.apache
.servicemix
.jbi.nmr.flow.jca.JCAFlow.onComponentStopped(JCAFlow.java:
477)
     at
org.apache.servicemix.jbi.nmr.flow.jca.JCAFlow
$2.componentStopped(JCAFlow.java:263)
     at
org
.apache
.servicemix
.jbi
.framework.ComponentMBeanImpl.fireEvent(ComponentMBeanImpl.java:
601)
     at
org
.apache
.servicemix
.jbi.framework.ComponentMBeanImpl.doStop(ComponentMBeanImpl.java:
322)
     at
org
.apache
.servicemix
.jbi
.framework.ComponentMBeanImpl.doShutDown(ComponentMBeanImpl.java:
334)
     at
org
.apache
.servicemix
.jbi .container.JBIContainer.deactivateComponent(JBIContainer.java:
987)
     at
org
.apache
.servicemix
.client .DefaultServiceMixClient.close(DefaultServiceMixClient.java:
278)

     at sun.reflect.GeneratedMethodAccessor190.invoke(Unknown
Source)
     at
sun
.reflect
.DelegatingMethodAccessorImpl
.invoke(DelegatingMethodAccessorImpl.java:25)
     at java.lang.reflect.Method.invoke(Method.java:585)
     at
org
.apache
.cxf
.service
.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:
166)
     at
org
.apache
.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
82)
     at
org
.apache
.cxf.jaxws.JAXWSMethodInvoker.invoke(JAXWSMethodInvoker.java:
110)
     at
org
.apache
.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:
68)
     at
org.apache.cxf.interceptor.ServiceInvokerInterceptor
$1.run(ServiceInvokerInterceptor.java:57)
     at
java.util.concurrent.Executors $RunnableAdapter.call(Executors.java:
417)
     at
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java: 269)
     at java.util.concurrent.FutureTask.run(FutureTask.java:123)
     at
org
.apache
.cxf
.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:
37)
     at
org
.apache
.cxf
.interceptor
.ServiceInvokerInterceptor
.handleMessage(ServiceInvokerInterceptor.java:95)
     at
org
.apache
.cxf
.phase
.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:
226)
     at
org
.apache
.cxf
.transport
.ChainInitiationObserver.onMessage(ChainInitiationObserver.java: 88)
     at
org
.apache
.cxf
.transport.jbi.JBIDispatcherUtil.dispatch(JBIDispatcherUtil.java:
156)
     at
org
.apache .servicemix.cxfse.CxfSeEndpoint.process(CxfSeEndpoint.java:
364)
     at
org
.apache
.servicemix
.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:540)
     at
org
.apache
.servicemix
.common .AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:
492)
     at
org
.apache
.servicemix
.common.BaseLifeCycle.onMessageExchange(BaseLifeCycle.java:46)
     at
org
.apache
.servicemix
.jbi
.messaging
.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:623)
     at
org
.apache
.servicemix .jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:
183)
     at
org
.apache
.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java: 167)
     at
org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue
$1.run(SedaQueue.java:134)
     at
java.util.concurrent.ThreadPoolExecutor
$Worker.runTask(ThreadPoolExecutor.java:650)
     at
java.util.concurrent.ThreadPoolExecutor
$Worker.run(ThreadPoolExecutor.java:675)
     at java.lang.Thread.run(Thread.java:595)
--
View this message in context:
http://old.nabble.com/JCA-Flow-java.util.concurrent.TimeoutException-tp28773205p28773205.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com






--
View this message in context:
http://old.nabble.com/JCA-Flow-java.util.concurrent.TimeoutException-tp28773205p28858020.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com




--
View this message in context: 
http://old.nabble.com/JCA-Flow-java.util.concurrent.TimeoutException-tp28773205p28880613.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.



--
Freeman Fang
------------------------
Open Source SOA: http://fusesource.com

Reply via email to