You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by William Blackburn <wj...@mac.com> on 2006/06/13 22:29:13 UTC

Problems with ServiceMix+ActiveMQ deployed as webapp in Tomcat 5.5

All,

Forgive me for wrapping three descrete questions in a single post,  
but we are having some trouble with deploying servicemix + embedded  
activemq in a web app deployed in Tomcat 5.5. Before I dig any  
deeper, I want to find out if these issues are known. These may seem  
like activemq issue, and forgive me if they are, but because they  
manifest only when deploying with servicemix as a webbap, I thought  
I'd ask. Our webapp config is very basic, and based on the servicemix  
web app example.

Our first issue is likely a simple activemq config problem - I am an  
activemq newb, but I couldn't find the answer at the activemq site.  
Specifically, we have multiple developers frequently deploying the  
smix-based webapp in the own environments, yet the activemq brokers  
all still try and federate. I've played withe the activemq config,  
but no matter what I try I can stop them. Is there a way to prevent  
the autodiscovery and federation process? My file currently looks like:
     <broker id="broker" useJmx="false">
         <persistenceAdapter>
             <journaledJDBC journalLogFiles="5"  
dataDirectory="#dataDir" dataSource="#postgres-ds"/>
         </persistenceAdapter>

         <transportConnectors>
             <transportConnector uri="tcp://localhost:61616"/>
         </transportConnectors>
     </broker>


Second, I think there may be a problem shutting down activemq when  
deployed embedded in a servicemix webapp. we frequently undeploy/ 
deploy, and the following scenario seems to happen to our developers  
who use windows, but not those who use Linux and OS X --  
specifically, upon the second deploy, they can't send any messages  
through servicemix (we use JMS flow), they get a JMSException  
"connection refused" - as if the previous undeploy had not completely  
shut down, oddly the only exception thrown during undeploy looks like:

http-8080-Processor24 2006-06-13 13:13:15,002 INFO   
[VMTransportFactory:stopped] Shutting down VM connectors for broker:  
localhost
tcp://localhost/127.0.0.1:61616 2006-06-13 13:13:15,004 WARN   
[ActiveMQConnection:onAsyncException] Async exception with no  
exception listener: java.io.EOFException
java.io.EOFException
         at java.io.DataInputStream.readInt(DataInputStream.java:358)
         at org.apache.activemq.openwire.OpenWireFormat.unmarshal 
(OpenWireFormat.java:270)
         at org.apache.activemq.transport.tcp.TcpTransport.run 
(TcpTransport.java:138)
         at java.lang.Thread.run(Thread.java:613)
http-8080-Processor24 2006-06-13 13:13:18,360 INFO   
[BrokerService:stop] ActiveMQ JMS Message Broker (localhost) stopped:  
org.apache.activemq.broker.BrokerService$2@fa0d64

If they restart Tomcat and redeploy it works for one time again, then  
the cycle repeats.


Finally, I've noticed that even for our Linux/OSX users subsequent  
undeploy/deploy cycles will gradually consume PermGen space  
(monitored using jconsole) which ultimately crashes the JVM.


Any help you can offer most appreciated,

BJ