Hi, Using AMQ 4.0.1 and 4.0.2 and Websphere AS 5.1.11
I have an MDB deployed which will pick up and process messages from an AMQ persistent queue. All is fine if the queue is cleared down before starting my application. However, if I start AMQ and put a message on the Queue via Hermes and then start up my application in WAS 5.1 I never get a connection to the queue via ListenerPort in WAS 5.1. I'm suspecting that this may be a security / permissions problem when accessing the queue, but can't see what would cause this to only kick in when there are messages on the queue. I do see errors like the following in a ServerException log within WAS, would anyone have an idea on this or come across this problem before ? Log from WAS 5.1 : Index Occur Time of last Occurence Exception SourceId ProbeId ences ----------------------------------------------------------------------- 1 1 28/08/06 19:21:58:703 IST java.io.FileNotFoundException com.ibm.ejs.jms.listener.AsyncMessageLog.readRequestLogFile 128 ----------------------------------------------------------------------- +2 1 28/08/06 19:21:59:203 IST java.lang.ClassNotFoundException com.ibm.ws.activity.ActivityServiceInterceptor.loadMigrationImpls 424 +3 1 28/08/06 19:21:59:766 IST com.ibm.ws.naming.jcache.CacheEntryNotFoundException com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal 367 +4 1 28/08/06 19:22:00:062 IST javax.naming.NameAlreadyBoundException com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.do_bind_new_corba_context 1042 +5 1 28/08/06 19:22:00:062 IST org.omg.CosNaming.NamingContextPackage.AlreadyBound com.ibm.ws.naming.jndicos.CNContextImpl.doCreateSubcontext 2155 +6 1 28/08/06 19:22:00:062 IST javax.naming.NameAlreadyBoundException com.ibm.ws.naming.jndicos.CNContextImpl.createSubcontext 756 +7 1 28/08/06 19:22:00:438 IST org.omg.CosNaming.NamingContextPackage.NotFound com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.bind_new_corba_context 944 +8 1 28/08/06 19:22:00:438 IST org.omg.CosNaming.NamingContextPackage.NotFound com.ibm.ws.naming.jndicos.CNContextImpl.doCreateSubcontext 2161 +9 1 28/08/06 19:22:00:438 IST javax.naming.NameNotFoundException com.ibm.ws.naming.jndicos.CNContextImpl.createSubcontext 756 +10 1 28/08/06 19:22:00:453 IST javax.naming.NameNotFoundException com.ibm.ws.naming.urlbase.UrlContextImpl.lookup 1226 +11 1 28/08/06 19:22:00:469 IST javax.naming.NameNotFoundException com.ibm.ws.naming.urlbase.UrlContextImpl.lookup 1252 +12 1 28/08/06 19:22:01:922 IST java.io.FileNotFoundException com.ibm.ejs.jms.DurableSubscriptionManagerImpl.readDurableSubscriptionFile 236 +13 1 28/08/06 19:22:03:172 IST javax.naming.NameNotFoundException com.ibm.ejs.container.BeanMetaData.BeanMetaData 2507 and my config is pretty basic in activemq.xml : <!-- START SNIPPET: example --> <beans xmlns="http://activemq.org/config/1.0"> <!-- Allows us to use system properties as variables in this configuration file --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/> <broker persistent="true" useJmx="true"> <!-- Use the following to set the broker memory limit (in bytes) 1mb below) <memoryManager> <usageManager id="memory-manager" limit="1048576"/> </memoryManager> --> <!-- Use the following to configure how ActiveMQ is exposed in JMX <managementContext> <managementContext connectorPort="1099" jmxDomainName="org.apache.activemq"/> </managementContext> --> <!-- In ActiveMQ 4, you can setup destination policies --> <destinationPolicy> <policyMap><policyEntries> <policyEntry topic="FOO.>"> <dispatchPolicy> <strictOrderDispatchPolicy /> </dispatchPolicy> <subscriptionRecoveryPolicy> <lastImageSubscriptionRecoveryPolicy /> </subscriptionRecoveryPolicy> </policyEntry> </policyEntries></policyMap> </destinationPolicy> <persistenceAdapter> <journaledJDBC journalLogFiles="5" dataDirectory="${activemq.home}/activemq-data"/> <!-- To use a different datasource, use th following syntax : --> <!-- <journaledJDBC journalLogFiles="5" dataDirectory="../activemq-data" dataSource="#postgres-ds"/> --> </persistenceAdapter> <transportConnectors> <transportConnector name="default" uri="tcp://localhost:61666" discoveryUri="multicast://default"/> <transportConnector name="stomp" uri="stomp://localhost:61663"/> </transportConnectors> <networkConnectors> <!-- by default just auto discover the other brokers --> <networkConnector name="default" uri="multicast://default"/> <!-- <networkConnector name="host1 and host2" uri="static://(tcp://host1:61616,tcp://host2:61616)" failover="true"/> --> </networkConnectors> </broker> <!-- This xbean configuration file supports all the standard spring xml configuration options --> <!-- Postgres DataSource Sample Setup --> <!-- <bean id="postgres-ds" class="org.postgresql.ds.PGPoolingDataSource"> <property name="serverName" value="localhost"/> <property name="databaseName" value="activemq"/> <property name="portNumber" value="0"/> <property name="user" value="activemq"/> <property name="password" value="activemq"/> <property name="dataSourceName" value="postgres"/> <property name="initialConnections" value="1"/> <property name="maxConnections" value="10"/> </bean> --> <!-- MySql DataSource Sample Setup --> <!-- <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost/activemq?relaxAutoCommit=true"/> <property name="username" value="activemq"/> <property name="password" value="activemq"/> <property name="poolPreparedStatements" value="true"/> </bean> --> <!-- Embedded Derby DataSource Sample Setup --> <!--bean id="derby-ds" class="org.apache.derby.jdbc.EmbeddedDataSource"> <property name="databaseName" value="derbydb"/> <property name="createDatabase" value="create"/> </bean--> </beans> <!-- END SNIPPET: example --> Any help greatly appreciated, as I say it works fine when the request queue is blank but if still has some existing messages then the MDB doesn't fire. Thanks, Steve. -- View this message in context: http://www.nabble.com/AMQ-4.0.x---MDB-Listener-not-connecting-tf2179115.html#a6025868 Sent from the ActiveMQ - User forum at Nabble.com.