The ActiveMQ configuration is like this :
<beans>
<bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
<broker brokerName="ParcoursBroker1"
useJmx="true"
xmlns="http://activemq.org/config/1.0"
persistent="true"
useShutdownHook="true"
deleteAllMessagesOnStartup="false">
<persistenceAdapter>
<jdbcPersistenceAdapter dataSource="#derby-ds"/>
</persistenceAdapter>
<transportConnectors>
<transportConnector name="openwire" uri="tcp://localhost:61616"/>
</transportConnectors>
<networkConnectors>
<networkConnector name="primETsec"
uri="static://(tcp://localhost:61616,tcp://localhost:61616)" />
</networkConnectors>
<destinations>
<queue physicalName="DUDE.QUEUE"/>
</destinations>
</broker>
<bean id="derby-ds" class="org.apache.derby.jdbc.EmbeddedDataSource">
<property name="databaseName" value="derbydb"/>
<property name="createDatabase" value="create"/>
</bean>
</beans>
omoumen wrote:
>
> Yes, we use JmsTemplate102 version 1.3 of Spring
>
>
> James.Strachan wrote:
>>
>> Are you using any kind of pooling with Spring?
>>
>> http://activemq.apache.org/jmstemplate-gotchas.html
>>
>> 2009/1/19 omoumen <[email protected]>:
>>>
>>> Our application uses ActiveMQ 4.1.0 for the management of asynchronous
>>> web
>>> services, for that we have set up a producer and a consumer. The
>>> producer
>>> send the message to the queue of ActiveMQ and the consumer send the
>>> messages
>>> in the queue to their destinations.
>>> Our problem is in the producer, at the time of the sending to the queue
>>> we
>>> have the following thread dump:
>>>
>>> ####<15 janv. 2009 11 h 27 CET> <Error> <WebLogicServer> <wn342>
>>> <P3Local>
>>> <[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default
>>> (self-tuning)'> <<WLS Kernel>> <> <> <1232015262880> <BEA-000337>
>>> <[STUCK]
>>> ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'
>>> has
>>> been busy for "643" seconds working on the request "Http Request:
>>> /P3NoyauDur/valideEntretien.do", which is more than the configured time
>>> (StuckThreadMaxTime) of "600" seconds. Stack trace:
>>> Thread-76 "[STUCK] ExecuteThread: '7' for queue:
>>> 'weblogic.kernel.Default
>>> (self-tuning)'" <alive, in native, suspended, waiting, priority=1,
>>> DAEMON> {
>>> -- Waiting for notification on:
>>> edu.emory.mathcs.backport.java.util.concurrent.locks.cond...@47a4fff[fat
>>> lock]
>>> java.lang.Object.wait(Object.java:474)
>>>
>>> edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar.await(CondVar.java:66)
>>>
>>> edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:313)
>>>
>>> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:42)
>>>
>>> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:74)
>>>
>>> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1166)
>>>
>>> org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1252)
>>> ^-- Holding lock: org.apache.activemq.activemqconnect...@47a500f[thin
>>> lock]
>>>
>>> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:273)
>>>
>>> org.apache.activemq.ActiveMQConnection.createQueueSession(ActiveMQConnection.java:1121)
>>>
>>> org.springframework.jms.core.JmsTemplate102.createSession(JmsTemplate102.java:177)
>>>
>>> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:409)
>>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:474)
>>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:464)
>>> parcours.dude.jmsactivemq102.Producteur.send(Producteur.java:39)
>>> parcours.dude.AppelDude.sendToJms(AppelDude.java:87)
>>> parcours.dude.AppelDude.call(AppelDude.java:149)
>>>
>>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFluxActionEntretien(ReglesFluxEntretienMAJActionsOffres.java:188)
>>>
>>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFlux(ReglesFluxEntretienMAJActionsOffres.java:68)
>>>
>>> parcours.dossier.entretien.EnregistreEntretienAction.executeAction(EnregistreEntretienAction.java:105)
>>>
>>> parcours.struts.action.ParcoursAction.perform(ParcoursAction.java:283)
>>>
>>> org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1676)
>>>
>>> parcours.struts.action.ParcoursActionServlet.processActionPerform(ParcoursActionServlet.java:359)
>>>
>>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1410)
>>>
>>> parcours.struts.action.ParcoursActionServlet.service(ParcoursActionServlet.java:204)
>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
>>>
>>> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:223)
>>>
>>> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:107)
>>>
>>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:198)
>>>
>>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
>>>
>>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3365)
>>>
>>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
>>> weblogic.security.service.SecurityManager.runAs(Unknown Source)
>>>
>>> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2076)
>>>
>>> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1998)
>>>
>>> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1331)
>>> weblogic.work.ExecuteThread.execute(ExecuteThread.java:197)
>>> weblogic.work.ExecuteThread.run(ExecuteThread.java:164)
>>> }
>>>
>>>>
>>> ####<15 janv. 2009 11 h 28 CET> <Error> <WebLogicServer> <wn342>
>>> <P3Local>
>>> <[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default
>>> (self-tuning)'> <<WLS Kernel>> <> <> <1232015322895> <BEA-000337>
>>> <[STUCK]
>>> ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)'
>>> has
>>> been busy for "703" seconds working on the request "Http Request:
>>> /P3NoyauDur/valideEntretien.do", which is more than the configured time
>>> (StuckThreadMaxTime) of "600" seconds. Stack trace:
>>> Thread-76 "[STUCK] ExecuteThread: '7' for queue:
>>> 'weblogic.kernel.Default
>>> (self-tuning)'" <alive, in native, suspended, waiting, priority=1,
>>> DAEMON> {
>>> -- Waiting for notification on:
>>> edu.emory.mathcs.backport.java.util.concurrent.locks.cond...@47a4fff[fat
>>> lock]
>>> java.lang.Object.wait(Object.java:474)
>>>
>>> edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar.await(CondVar.java:66)
>>>
>>> edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:313)
>>>
>>> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:42)
>>>
>>> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:74)
>>>
>>> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1166)
>>>
>>> org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1252)
>>> ^-- Holding lock: org.apache.activemq.activemqconnect...@47a500f[thin
>>> lock]
>>>
>>> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:273)
>>>
>>> org.apache.activemq.ActiveMQConnection.createQueueSession(ActiveMQConnection.java:1121)
>>>
>>> org.springframework.jms.core.JmsTemplate102.createSession(JmsTemplate102.java:177)
>>>
>>> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:409)
>>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:474)
>>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:464)
>>> parcours.dude.jmsactivemq102.Producteur.send(Producteur.java:39)
>>> parcours.dude.AppelDude.sendToJms(AppelDude.java:87)
>>> parcours.dude.AppelDude.call(AppelDude.java:149)
>>>
>>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFluxActionEntretien(ReglesFluxEntretienMAJActionsOffres.java:188)
>>>
>>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFlux(ReglesFluxEntretienMAJActionsOffres.java:68)
>>>
>>> parcours.dossier.entretien.EnregistreEntretienAction.executeAction(EnregistreEntretienAction.java:105)
>>>
>>> parcours.struts.action.ParcoursAction.perform(ParcoursAction.java:283)
>>>
>>> org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1676)
>>>
>>> parcours.struts.action.ParcoursActionServlet.processActionPerform(ParcoursActionServlet.java:359)
>>>
>>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1410)
>>>
>>> parcours.struts.action.ParcoursActionServlet.service(ParcoursActionServlet.java:204)
>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:815)
>>>
>>> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:223)
>>>
>>> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:107)
>>>
>>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:198)
>>>
>>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
>>>
>>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3365)
>>>
>>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308)
>>> weblogic.security.service.SecurityManager.runAs(Unknown Source)
>>>
>>> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2076)
>>>
>>> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1998)
>>>
>>> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1331)
>>> weblogic.work.ExecuteThread.execute(ExecuteThread.java:197)
>>> weblogic.work.ExecuteThread.run(ExecuteThread.java:164)
>>> }
>>>
>>> Could help us to solve this problem, very by knowing that this problem
>>> n' is
>>> not systematic.
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Lock-in-ActiveMQ-and-Weblogic-tp21542855p21542855.html
>>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> James
>> -------
>> http://macstrac.blogspot.com/
>>
>> Open Source Integration
>> http://fusesource.com/
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/Lock-in-ActiveMQ-and-Weblogic-tp21542855p21543357.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.