Hello active mq users , I have the following configuration on my system tomcat 5.5 java 1.5.09 In server.xml , I placed the JNDI resources as follows <GlobalNamingResources>
<Resource name="jms/TopicConnectionFactory" auth="Container" type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS Connection Factory" factory="org.apache.activemq.jndi.JNDIReferenceFactory" brokerURL="tcp://localhost:61716" brokerName="LocalActiveMQBroker"/> <Resource name="jms/Topic" auth="Container" type="org.apache.activemq.command.ActiveMQTopic" description="sample Topic" factory="org.apache.activemq.jndi.JNDIReferenceFactory" physicalName="FOO.BAR"/> </GlobalNamingResources> I have a web app called UI , I am trying to access these global jndi recources from this web app, Hence the context.xml for this web app has the following <Context reloadable="true"> <ResourceLink name="ConnectionFactory" global="jms/TopicConnectionFactory" type= "org.apache.activemq.ActiveMQConnectionFactory" /> <ResourceLink name="PNMTopic" global="jms/Topic" type= "org.apache.activemq.command.ActiveMQTopic" /> </Context> The subsciber class in the UI context is as follows public class PNMSubscriber { TopicConnection tConn ; TopicConnectionFactory tFactory ; Topic pnmTopic; ActiveMQTopicSession pnmSession ; public PNMSubscriber(){ try{ InitialContext initialContext = new InitialContext(); Context envContext = (Context) initialContext.lookup("java:comp/env"); tFactory = (TopicConnectionFactory)envContext.lookup("ConnectionFactory"); tConn = tFactory.createTopicConnection(); pnmSession = (ActiveMQTopicSession) tConn.createTopicSession(true, Session.AUTO_ACKNOWLEDGE); pnmTopic = (Topic)envContext.lookup("PNMTopic"); pnmSubscriber = pnmSession.createSubscriber(pnmTopic); }catch(Exception e){ e.printStackTrace(); } } I get a class cast exception as follows java.lang.ClassCastException: org.apache.activemq.ActiveMQConnectionFactory at com.cpnm.common.messaging.PNMSubscriber.<init>(PNMSubscriber.java:40) The exception is raised , at the following line , in the code tFactory = (TopicConnectionFactory)envContext.lookup("ConnectionFactory"); I tried casting the object to "ActiveMQConnectionFactory" , I still get the same exception. I think, iam missing something in the configuration, please let me know, if I need to add anything else. Please help me out !! thank you, Suchitha.