geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From zm <zzzz_m...@hotmail.com>
Subject Re: JMS config and use under geronimo
Date Fri, 08 Aug 2008 10:19:11 GMT

I'm using geronimo 2.1.2, and I don't have the deploy plan file on the
project.

I need to put it in application.xml and the plan file next to it?

I remember to see the instructions upon jms creation, but now I can't seem
to find a way to get there without creating a new jms :(.


Thanks


djencks wrote:
> 
> This looks ok to me but a little more is needed...
> 
> you need a geronimo plan for your web app with a dependency on the jms  
> connector you deployed.  I don't know why your app would deploy  
> without this, so maybe its there but you didn't mention it?
> 
> Which geronimo version?
> 
> thanks
> david jencks
> 
> On Aug 7, 2008, at 10:17 AM, zm wrote:
> 
>>
>> Hi,
>>
>> I'm looking forward to put a simple web application to work with JMS
>> messaging, but I can't seem to do it.
>>
>> I have not much experience doing it, so I'm getting a bit frustrated.
>>
>> First of all, my Java code that sends a message:
>>
>>
>> 		String message = "Text Message to Send!";
>> 		Connection connection = null;
>> 		Session session = null;
>>
>> 		try {
>> 			Context ctx = new InitialContext();
>> 			ConnectionFactory connectionFactory = (ConnectionFactory)  
>> ctx.lookup(
>> "java:comp/env/jms/mycon" );
>> 			Queue myQueue = (Queue) ctx.lookup( "java:comp/env/jms/myqueue" );
>>
>> 			connection = connectionFactory.createConnection();
>>
>> 			session = connection.createSession(false,  
>> Session.AUTO_ACKNOWLEDGE);
>>
>> 			MessageProducer producer = session.createProducer(myQueue);
>>
>> 			Message jmsMessage = session.createTextMessage( message );
>>
>> 			producer.send( jmsMessage );
>>
>> 		} catch(Throwable t) {
>> 			throw new Exception("Error found!", t);
>> 		} finally {
>> 			try {
>> 				if(session!=null) session.commit();
>> 			} catch(Throwable t) {
>> 			}
>> 			try {
>> 				if(connection!=null) connection.close();
>> 			} catch(Throwable t) {
>> 			}
>> 		}
>>
>>
>> In the web.xml:
>>
>> 	<resource-ref>
>> 		<description></description>
>> 		<res-ref-name>jms/mycon</res-ref-name>
>> 		<res-type>javax.jms.QueueConnectionFactory</res-type>
>> 		<res-auth>Container</res-auth>
>> 		<res-sharing-scope>Shareable</res-sharing-scope>
>> 	</resource-ref>
>> 	<message-destination-ref>
>> 		<message-destination-ref-name>jms/myqueue</message-destination-ref- 
>> name>
>> 		<message-destination-type>javax.jms.Queue</message-destination-type>
>> 		<message-destination-usage>Consumes</message-destination-usage>
>> 		<message-destination-link>MyQueue</message-destination-link>
>> 	</message-destination-ref>
>>
>>
>> Now to configure the Geronimo, I created selecting "for ActiveMQ"  
>> option
>> under the "JMS Resources", entered data that gave me the following  
>> deploy
>> plan:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/ 
>> connector-1.2">
>>    <dep:environment
>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>        <dep:moduleId>
>>            <dep:groupId>console.jms</dep:groupId>
>>            <dep:artifactId>mytest</dep:artifactId>
>>            <dep:version>1.0</dep:version>
>>            <dep:type>rar</dep:type>
>>        </dep:moduleId>
>>        <dep:dependencies>
>>            <dep:dependency>
>>                <dep:groupId>org.apache.geronimo.configs</dep:groupId>
>>                <dep:artifactId>activemq-broker</dep:artifactId>
>>                <dep:type>car</dep:type>
>>            </dep:dependency>
>>        </dep:dependencies>
>>    </dep:environment>
>>    <resourceadapter>
>>        <resourceadapter-instance>
>>            <resourceadapter-name>mytest</resourceadapter-name>
>>            <nam:workmanager
>> xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.2">
>>                <nam:gbean-link>DefaultWorkManager</nam:gbean-link>
>>            </nam:workmanager>
>>        </resourceadapter-instance>
>>        <outbound-resourceadapter>
>>            <connection-definition>
>>
>> <connectionfactory-interface>javax.jms.QueueConnectionFactory</ 
>> connectionfactory-interface>
>>                <connectiondefinition-instance>
>>                    <name>jms/mycon</name>
>>                    <connectionmanager>
>>                        <xa-transaction>
>>                            <transaction-caching/>
>>                        </xa-transaction>
>>                        <single-pool>
>>                            <match-one/>
>>                        </single-pool>
>>                    </connectionmanager>
>>                </connectiondefinition-instance>
>>            </connection-definition>
>>        </outbound-resourceadapter>
>>    </resourceadapter>
>>    <adminobject>
>>        <adminobject-interface>javax.jms.Queue</adminobject-interface>
>>
>> <adminobject-class>org.apache.activemq.command.ActiveMQQueue</ 
>> adminobject-class>
>>        <adminobject-instance>
>>            <message-destination-name>jms/myqueue</message- 
>> destination-name>
>>            <config-property-setting
>> name="PhysicalName">jms/myqueue</config-property-setting>
>>        </adminobject-instance>
>>    </adminobject>
>>    <adminobject>
>>        <adminobject-interface>javax.jms.Topic</adminobject-interface>
>>
>> <adminobject-class>org.apache.activemq.command.ActiveMQTopic</ 
>> adminobject-class>
>>    </adminobject>
>> </connector>
>>
>>
>> In the "JMS Resources" list, I now have:
>>
>> mytest (console.jms/mytest/1.0/rar)
>> Type 	Name 	Deployed As 	State 	Actions
>> Connection Factory 	jms/mycon 	Server-wide 	running 	
>> Queue 	jms/myqueue 	Server-wide 	running 	
>>
>> ( One question at this point, how can I delete a "JMS Resource  
>> Groups" entry
>> like the one I created? )
>>
>>
>> Running, I receive the following exception:
>>
>> Caused by: javax.naming.NotContextException: jms/mycon
>>        at
>> org.apache.xbean.naming.context.AbstractContext.lookup(AbstractContex
>> t.java:167)
>>        at
>> org.apache.xbean.naming.context.AbstractContext.lookup(AbstractContex
>> t.java:603)
>>        at javax.naming.InitialContext.lookup(InitialContext.java:351)
>>        at
>> com.megasis.utils.jms.LoggingFacade.postMessage(LoggingFacade.java:17
>> 6)
>>        ... 21 more
>>
>>
>> I'm missing something, probably, and I can't find any good tutorials  
>> on how
>> to setup JMS without using MDB ...
>>
>> Any help appreciated.
>>
>> Thanks
>> -- 
>> View this message in context:
>> http://www.nabble.com/JMS-config-and-use-under-geronimo-tp18875397s134p18875397.html
>> Sent from the Apache Geronimo - Users mailing list archive at  
>> Nabble.com.
>>
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/JMS-config-and-use-under-geronimo-tp18875397s134p18889372.html
Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.


Mime
View raw message