activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Henri Gomez <henri.go...@gmail.com>
Subject Re: embedded broker in Tomcat 6 available to both local vm and external clients
Date Mon, 19 Jan 2009 10:01:22 GMT
Under debug I could see in the ConnectionFactory :

brokerUrl = vm://localhost?broker.persistent=false,tcp://localhost:61616

I wonder why the TCP port is not opened ;(


2009/1/19 Henri Gomez <henri.gomez@gmail.com>:
> Hi to all,
>
> I read carefully the docs about declaring an ActiveMQ in Tomcat :
>
> http://activemq.apache.org/tomcat.html
>
> I need to get ActiveMQ embedded in a webapp and for both in VM clients
> but also external clients and want to get the setup in context.xml :
>
> I tried to add in context.xml :
>
>  <Resource name="jms/ConnectionFactory" auth="Container"
> type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS
> Connection Factory"
>        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
> brokerURL="vm://localhost" brokerName="LocalActiveMQBroker"/>
>
>
> I couldn't see tcp port opend.
>
>  <Resource name="jms/ConnectionFactory" auth="Container"
> type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS
> Connection Factory"
>        factory="org.apache.activemq.jndi.JNDIReferenceFactory"
> brokerURL="tcp://localhost:61616" brokerName="LocalActiveMQBroker"
>        useEmbeddedBroker="true" />
>
> No more luck.
>
> How could I get it works ?
>
> With both configuration I could see the broker available by adding in
> a StartupServlet :
>
>                try {
>                    InitialContext initCtx = new InitialContext();
>                    Context envContext = (Context) initCtx.lookup("java:comp/env");
>                    ConnectionFactory connectionFactory = (ConnectionFactory)
> envContext.lookup("jms/ConnectionFactory");
>                    Connection connection = connectionFactory.createConnection();
>                    Session session = connection.createSession(false,
> Session.AUTO_ACKNOWLEDGE);
>                    MessageProducer producer = session.createProducer((Destination)
> envContext.lookup("jms/topic/MyTopic"));
>
>                    Message testMessage = session.createMessage();
>                    testMessage.setStringProperty("testKey", "testValue");
>                    producer.send(testMessage);
>                } catch (NamingException ne) {
>                    System.err.println("NamingException: " + ne);
>                } catch (JMSException jmse) {
>                    System.err.println("NamingException: " + jmse);
>                }
>
> My question is :
>
> How could we get Tomcat 6 start an ActiveMQ in embedded mode with
> opened connections to outside clients.
>
> Regards
>

Mime
View raw message