You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Thomas Marsh <ma...@nitesco.com> on 2002/02/17 19:35:44 UTC

commons messenger

All:

I didn't see a -user list for commons, so I'm posting this here. If
there is a better place to post this, please let me know.

Has anyone used commons messenger with IBM's MQSeries?

I'm working on a project which will use IBM Websphere 4.0 Advanced
Edition, which supports EJBs, but not MDBs.

I figured we would have to write a listener, which would then pass off
the message ID to a SLSB, which would then pull the message off the
queue, run thru the business logic, and commit it.

It looks like I could use the commons messenger classes to do some, if
not all of this work.


Am I barking up the right tree?


TIA

-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
From: "Thomas Marsh" <ma...@nitesco.com>
> Following is the stack trace from the exception. What's interesting is
> that my code is in a loop consuming messages, only doing the open once.
> The stack trace looks like it's in the open code (createMessageConsumer)
> again.....

Thanks for that. It does look a little strange. Maybe MQ has a problem with
creating & closing lots of MessageConsumers in a tight loop.

If you're in a loop consuming lots of messages it could well help to create
a message consumer outside of the loop which might help fix your problem.

e.g. instead of

while (true) {
    Message message = messenger.receive(destination);
    ...
}

which under the covers would create then close lots of MessageConsumer
objects, you could do

MessageConsumer consumer = messenger.createConsumer(destination);
while(true) {
    Message message = consumer.receive(destination);
    ...
}

The above should be a bit faster, since the same MessageConsumer can be
reused. Remember to close the consumer when you've done, consumers can tend
to hog messages if you don't close them down again.

James

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.comm

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by Thomas Marsh <ma...@nitesco.com>.
Following is the stack trace from the exception. What's interesting is
that my code is in a loop consuming messages, only doing the open once.
The stack trace looks like it's in the open code (createMessageConsumer)
again..... 

com.mycompany.thiercompany.FACTSClickQueueListener     - client.run 
  javax.jms.JMSException: MQJMS2008: failed to open MQ queue      at
 
com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:418)  
at
 
com.ibm.mq.jms.MQQueueSession.createReceiver(MQQueueSession.java:434)       
at
 
com.ibm.mq.jms.MQQueueSession.createReceiver(MQQueueSession.java:368)       
at
 
org.apache.commons.messenger.MessengerSupport.createMessageConsumer(MessengerSupport.java:824)      
  at
org.apache.commons.messenger.MessengerSupport.getMessageConsumer(MessengerSupport.java:790) 
at
 
org.apache.commons.messenger.MessengerSupport.receive(MessengerSupport.java:227)    
at
 
com.mycompany.thiercompany.FACTSClickQueueListener.run(FACTSClickQueueListener.java(Compiled
Code))       at
 
com.mycompany.thiercompany.FACTSClickQueueListener.main(FACTSClickQueueListener.java:67) 
at
  java.lang.reflect.Method.invoke(Native Method)       at
 
com.ibm.websphere.client.applicationclient.launchClient.createContainerAndLaunchApp(launchClient.java:448)  
  at
com.ibm.websphere.client.applicationclient.launchClient.main(launchClient.java:304) 
at
  java.lang.reflect.Method.invoke(Native Method)       at
  com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:158)


James Strachan wrote:
> 
> From: "Thomas Marsh" <ma...@nitesco.com>
> > Hi all. Back again.
> >
> > We've been using commons messenger with IBM's MQSeries in unit test /
> > system test mode now for about a month. Things have been going sweetly.
> 
> Great!
> 
> > We're using it in an application (not a servlet) with a client
> > connection (TCPIP) from an AIX platform to an MVS platform. The
> > application picks up xml point-to-point messages from the queue and
> > passes them to an EJB for processing. (Websphere 4.0 AE does not have
> > MDBs).
> >
> > Periodically, the MQ administrator will ask, "Why do I see the number of
> > connections on the MQ monitor grow? Most of the time, I only see one
> > connection per application / per queue".
> >
> > This week, we've been cranking up the volume and BANG! We get an MQ
> > message on both the consumer and the producer's side saying "error 2017
> > - Handle_not_available". We restart the application and everythings
> > OK.... Always seems to die around message 127.....
> >
> > code on the consumer:
> >
> > messenger = MessengerManager.get(jndiQCF);
> > if (messenger == null) {
> > throw new JMSException("No such messenger called: " + jndiQCF);
> > }
> > Destination destination = messenger.getDestination(jndiQ);
> > if (destination == null) {
> > throw new JMSException("Could not find destination: " + jndiQ);
> > }
> > do {
> > if (fcqlEJB == null) {
> > try {
> > fcqlEJB = getEJB(ejbserver, ejblookupname);
> > } catch (Exception e) {
> > logger.fatal("client.run", e);
> > return;
> > }
> > }
> >
> > TextMessage textMessage = (TextMessage)
> > messenger.receive(destination);
> > msgtext = textMessage.getText();
> >
> > // use the reflected method to execute the onMessage(String msg)
> > method
> > try {
> > onMessageMethod.invoke(fcqlEJB, new Object[] { msgtext });
> > messenger.commit();
> > } catch (Exception e) {
> > messenger.rollback();
> > logger.error("onMessage invoke failed", e);
> > return;
> > }
> >
> > if (logger.isDebugEnabled()) {
> > logger.debug(textMessage.getJMSMessageID());
> > logger.debug("Message text" + msgtext);
> > }
> > } while (rf);
> >
> > // close the JMS connection to release any background threads
> > messenger.close();
> >
> > Is the messenger using the same connection each receive? Does anyone
> > have any ideas?
> 
> The messenger.close() will close the current connection. Are you sure you
> want to do that for each time you send a message?
> 
> Just in case anything wacky was going on I've just been over the close logic
> once more and patched the code slightly so that I'm pretty sure now that
> close() will correctly close things down nicely even if some wierd exception
> were to occur during the close. I wonder if using the latest CVS HEAD fixes
> it?
> 
> BTW do you have a stack trace for the error you get with MQ?
> 
> James
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>

-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
From: "Thomas Marsh" <ma...@nitesco.com>
> Hi all. Back again.
>
> We've been using commons messenger with IBM's MQSeries in unit test /
> system test mode now for about a month. Things have been going sweetly.

Great!

> We're using it in an application (not a servlet) with a client
> connection (TCPIP) from an AIX platform to an MVS platform. The
> application picks up xml point-to-point messages from the queue and
> passes them to an EJB for processing. (Websphere 4.0 AE does not have
> MDBs).
>
> Periodically, the MQ administrator will ask, "Why do I see the number of
> connections on the MQ monitor grow? Most of the time, I only see one
> connection per application / per queue".
>
> This week, we've been cranking up the volume and BANG! We get an MQ
> message on both the consumer and the producer's side saying "error 2017
> - Handle_not_available". We restart the application and everythings
> OK.... Always seems to die around message 127.....
>
> code on the consumer:
>
> messenger = MessengerManager.get(jndiQCF);
> if (messenger == null) {
> throw new JMSException("No such messenger called: " + jndiQCF);
> }
> Destination destination = messenger.getDestination(jndiQ);
> if (destination == null) {
> throw new JMSException("Could not find destination: " + jndiQ);
> }
> do {
> if (fcqlEJB == null) {
> try {
> fcqlEJB = getEJB(ejbserver, ejblookupname);
> } catch (Exception e) {
> logger.fatal("client.run", e);
> return;
> }
> }
>
> TextMessage textMessage = (TextMessage)
> messenger.receive(destination);
> msgtext = textMessage.getText();
>
> // use the reflected method to execute the onMessage(String msg)
> method
> try {
> onMessageMethod.invoke(fcqlEJB, new Object[] { msgtext });
> messenger.commit();
> } catch (Exception e) {
> messenger.rollback();
> logger.error("onMessage invoke failed", e);
> return;
> }
>
> if (logger.isDebugEnabled()) {
> logger.debug(textMessage.getJMSMessageID());
> logger.debug("Message text" + msgtext);
> }
> } while (rf);
>
> // close the JMS connection to release any background threads
> messenger.close();
>
> Is the messenger using the same connection each receive? Does anyone
> have any ideas?

The messenger.close() will close the current connection. Are you sure you
want to do that for each time you send a message?

Just in case anything wacky was going on I've just been over the close logic
once more and patched the code slightly so that I'm pretty sure now that
close() will correctly close things down nicely even if some wierd exception
were to occur during the close. I wonder if using the latest CVS HEAD fixes
it?

BTW do you have a stack trace for the error you get with MQ?

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


commons messenger

Posted by Thomas Marsh <ma...@nitesco.com>.
Hi all. Back again.

We've been using commons messenger with IBM's MQSeries in unit test /
system test mode now for about a month. Things have been going sweetly.
We're using it in an application (not a servlet) with a client
connection (TCPIP) from an AIX platform to an MVS platform. The
application picks up xml point-to-point messages from the queue and
passes them to an EJB for processing. (Websphere 4.0 AE does not have
MDBs).

Periodically, the MQ administrator will ask, "Why do I see the number of
connections on the MQ monitor grow? Most of the time, I only see one
connection per application / per queue".

This week, we've been cranking up the volume and BANG! We get an MQ
message on both the consumer and the producer's side saying "error 2017
- Handle_not_available". We restart the application and everythings
OK.... Always seems to die around message 127.....

code on the consumer:

		messenger = MessengerManager.get(jndiQCF);
		if (messenger == null) {
			throw new JMSException("No such messenger called: " + jndiQCF);
		}
		Destination destination = messenger.getDestination(jndiQ);
		if (destination == null) {
			throw new JMSException("Could not find destination: " + jndiQ);
		}
		do {
			if (fcqlEJB == null) {
				try {
					fcqlEJB = getEJB(ejbserver, ejblookupname);
				} catch (Exception e) {
					logger.fatal("client.run", e);
					return;
				}
			}

			TextMessage textMessage = (TextMessage)
messenger.receive(destination);
			msgtext = textMessage.getText();

			// use the reflected method to execute the onMessage(String msg)
method
			try {
				onMessageMethod.invoke(fcqlEJB, new Object[] { msgtext });
				messenger.commit();
			} catch (Exception e) {
				messenger.rollback();
				logger.error("onMessage invoke failed", e);
				return;
			}

			if (logger.isDebugEnabled()) {
				logger.debug(textMessage.getJMSMessageID());
				logger.debug("Message text" + msgtext);
			}
		} while (rf);

		// close the JMS connection to release any background threads 
		messenger.close();

Is the messenger using the same connection each receive? Does anyone
have any ideas?


-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
Hi Thomas

----- Original Message -----
From: "Thomas Marsh" <ma...@nitesco.com>
> James:
>
> Are messagelets multithreaded?

Messagelets are Servlets so they follow exactly the same (& very successful)
multi-threaded model.

> Will messagelets be instantiated for
> processing messages

Tyically the servlet engine will instantiate a messagelet/servlet on startup
and share the same instance for each request in concurrent threads - unless
your messaglet implements SingleThreadModel in which case it will pool them.

> on a given queue as fast as the messages arrive on
> the queue?

Yes. The message is dispatched from the JMS provider into the servlet engine
(or MessageListener or MDO) in the same thread.

> Or are they processed serially? I'd like them to be processed
> as fast as they come in......

You can process messages from a single queue serially if you wish (which is
sometimes important to preserve the ordering of the messages). Or you could
process them in parallel either by

* having multiple JVMs (servlet engines) processing the messages in parallel
* having multiple threads & consumers in a JVM processing the same
destination (queue or topic)

The latter right now isn't supported terribly well. To do so we'd need to
create optional thread pools per subscription, or to asynchronously dispatch
all incoming messages to some worker thread pool to increase parallelism. I
think the latter would be a nice idea; then there's a single worker thread
pool (like in the Servlet engine itself) and all incoming messages get
dispatched into it.

This should be a fairly straightforward patch which I will get to
eventually - but by all means beat me to it, I've a few things on my plate
right now. I've added a comment (search for '####') to the code in
ManagerServlet where the actual subscription occurs where we could add some
kind of thread pooling in there.

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by Thomas Marsh <ma...@nitesco.com>.
James:

Are messagelets multithreaded? Will messagelets be instantiated for
processing messages on a given queue as fast as the messages arrive on
the queue? Or are they processed serially? I'd like them to be processed
as fast as they come in......

Thanks.

Tom

James Strachan wrote:
> 
> From: "Thomas Marsh" <ma...@nitesco.com>
> > James / List:
> >
> > We're about to start experimenting with MQ Series, Websphere AE, and
> > possibly commons messenger, and was wondering if the messenger objects
> > can participate in transactions (XA?) ? I.E. If I consume a message in a
> > session EJB, and something goes wrong, can I rollback the transaction so
> > the message remains on the queue?
> 
> Sure thing. You can create an XA Connection/Session. Though right now that
> will take a custom SessionFactory to be used - we should add this to the XML
> config as an option. Though you'll need to do the JTA/JTS plumbing yourself
> right now - thats one thing we should address for sure.
> 
> If you're doing some EJB stuff it might be easier to just use Message Driven
> EJBs; Messenger works better in web/servlet centric environments.
> 
> James
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>

-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
From: "Thomas Marsh" <ma...@nitesco.com>
> James / List:
>
> We're about to start experimenting with MQ Series, Websphere AE, and
> possibly commons messenger, and was wondering if the messenger objects
> can participate in transactions (XA?) ? I.E. If I consume a message in a
> session EJB, and something goes wrong, can I rollback the transaction so
> the message remains on the queue?

Sure thing. You can create an XA Connection/Session. Though right now that
will take a custom SessionFactory to be used - we should add this to the XML
config as an option. Though you'll need to do the JTA/JTS plumbing yourself
right now - thats one thing we should address for sure.

If you're doing some EJB stuff it might be easier to just use Message Driven
EJBs; Messenger works better in web/servlet centric environments.

James


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by Thomas Marsh <ma...@nitesco.com>.
James / List:

We're about to start experimenting with MQ Series, Websphere AE, and
possibly commons messenger, and was wondering if the messenger objects
can participate in transactions (XA?) ? I.E. If I consume a message in a
session EJB, and something goes wrong, can I rollback the transaction so
the message remains on the queue?

I've been looking at the commons messenger code, but it hasn't
completely sunk in yet....

Thanks for your help!

Tom


James Strachan wrote:
> 
> ----- Original Message -----
> From: "Thomas Marsh" <ma...@nitesco.com>
> > James:
> >
> >
> >
> > James Strachan wrote:
> > >
> > > Hi Thomas
> > >
> > > From: "Thomas Marsh" <ma...@nitesco.com>
> > > > All:
> > > >
> > > > I didn't see a -user list for commons, so I'm posting this here. If
> > > > there is a better place to post this, please let me know.
> > >
> > > This is the best place to post.
> > >
> > > > Has anyone used commons messenger with IBM's MQSeries?
> > >
> > > Not yet AFAIK - though modifying the Messenger.xml config file a little
> and
> > > it should work fine with MQSeries - if you get it working let us know
> and we
> > > can add the MQ config file to CVS. We've already got config files for
> > > JBossMQ, SpiritWave and AshnaMQ.
> > >
> > > > I'm working on a project which will use IBM Websphere 4.0 Advanced
> > > > Edition, which supports EJBs, but not MDBs.
> > >
> > > Should be fine. Though if you're building a mostly EJB based system then
> > > maybe MDBs might help - its worth taking a look at them. If you can't
> use
> > > MDBs for any reason then Messenger is a great (simple) alternative
> without
> > > requiring an EJB2.0 container - it'll work just fine in Tomcat.
> >
> > I'm thinking that messenger will provide me an alternative to using MDBs
> 
> It will. In the messenger project its called MDO, Message Driven Objects as
> opposed to MDB (Message Driven EJB). All the subscriptions are then put in
> an XML deployment document.
> 
> > > > I figured we would have to write a listener, which would then pass off
> > > > the message ID to a SLSB
> > >
> > > Whats an SLSB?
> >
> > Sorry. A stateless session bean. I've been reading the Sun EJB interest
> > list too much lately....
> 
> :) Ah thanks.
> 
> James
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>

-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
----- Original Message -----
From: "Thomas Marsh" <ma...@nitesco.com>
> James:
>
>
>
> James Strachan wrote:
> >
> > Hi Thomas
> >
> > From: "Thomas Marsh" <ma...@nitesco.com>
> > > All:
> > >
> > > I didn't see a -user list for commons, so I'm posting this here. If
> > > there is a better place to post this, please let me know.
> >
> > This is the best place to post.
> >
> > > Has anyone used commons messenger with IBM's MQSeries?
> >
> > Not yet AFAIK - though modifying the Messenger.xml config file a little
and
> > it should work fine with MQSeries - if you get it working let us know
and we
> > can add the MQ config file to CVS. We've already got config files for
> > JBossMQ, SpiritWave and AshnaMQ.
> >
> > > I'm working on a project which will use IBM Websphere 4.0 Advanced
> > > Edition, which supports EJBs, but not MDBs.
> >
> > Should be fine. Though if you're building a mostly EJB based system then
> > maybe MDBs might help - its worth taking a look at them. If you can't
use
> > MDBs for any reason then Messenger is a great (simple) alternative
without
> > requiring an EJB2.0 container - it'll work just fine in Tomcat.
>
> I'm thinking that messenger will provide me an alternative to using MDBs

It will. In the messenger project its called MDO, Message Driven Objects as
opposed to MDB (Message Driven EJB). All the subscriptions are then put in
an XML deployment document.


> > > I figured we would have to write a listener, which would then pass off
> > > the message ID to a SLSB
> >
> > Whats an SLSB?
>
> Sorry. A stateless session bean. I've been reading the Sun EJB interest
> list too much lately....

:) Ah thanks.

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by Thomas Marsh <ma...@nitesco.com>.
James:



James Strachan wrote:
> 
> Hi Thomas
> 
> From: "Thomas Marsh" <ma...@nitesco.com>
> > All:
> >
> > I didn't see a -user list for commons, so I'm posting this here. If
> > there is a better place to post this, please let me know.
> 
> This is the best place to post.
> 
> > Has anyone used commons messenger with IBM's MQSeries?
> 
> Not yet AFAIK - though modifying the Messenger.xml config file a little and
> it should work fine with MQSeries - if you get it working let us know and we
> can add the MQ config file to CVS. We've already got config files for
> JBossMQ, SpiritWave and AshnaMQ.
> 
> > I'm working on a project which will use IBM Websphere 4.0 Advanced
> > Edition, which supports EJBs, but not MDBs.
> 
> Should be fine. Though if you're building a mostly EJB based system then
> maybe MDBs might help - its worth taking a look at them. If you can't use
> MDBs for any reason then Messenger is a great (simple) alternative without
> requiring an EJB2.0 container - it'll work just fine in Tomcat.

I'm thinking that messenger will provide me an alternative to using MDBs

> 
> > I figured we would have to write a listener, which would then pass off
> > the message ID to a SLSB
> 
> Whats an SLSB?

Sorry. A stateless session bean. I've been reading the Sun EJB interest
list too much lately....

> 
> > , which would then pull the message off the
> > queue, run thru the business logic, and commit it.
> >
> > It looks like I could use the commons messenger classes to do some, if
> > not all of this work.
> >
> > Am I barking up the right tree?
> 
> No I think you're certainly barking up the right tree. Messenger should make
> it a little easier to work with JMS and if you're not using MDBs then
> Messenger also provides a JMS 'application server' that can be deployed in
> any Servlet engine, such as Websphere, to manage your subscriptions. So it
> should be a good fit.
> 
> James
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>

-- 
Tom Marsh

mailto:marsht1@nitesco.com
http://www.nitesco.com

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: commons messenger

Posted by James Strachan <ja...@yahoo.co.uk>.
Hi Thomas

From: "Thomas Marsh" <ma...@nitesco.com>
> All:
>
> I didn't see a -user list for commons, so I'm posting this here. If
> there is a better place to post this, please let me know.

This is the best place to post.

> Has anyone used commons messenger with IBM's MQSeries?

Not yet AFAIK - though modifying the Messenger.xml config file a little and
it should work fine with MQSeries - if you get it working let us know and we
can add the MQ config file to CVS. We've already got config files for
JBossMQ, SpiritWave and AshnaMQ.


> I'm working on a project which will use IBM Websphere 4.0 Advanced
> Edition, which supports EJBs, but not MDBs.

Should be fine. Though if you're building a mostly EJB based system then
maybe MDBs might help - its worth taking a look at them. If you can't use
MDBs for any reason then Messenger is a great (simple) alternative without
requiring an EJB2.0 container - it'll work just fine in Tomcat.


> I figured we would have to write a listener, which would then pass off
> the message ID to a SLSB

Whats an SLSB?

> , which would then pull the message off the
> queue, run thru the business logic, and commit it.
>
> It looks like I could use the commons messenger classes to do some, if
> not all of this work.
>
> Am I barking up the right tree?

No I think you're certainly barking up the right tree. Messenger should make
it a little easier to work with JMS and if you're not using MDBs then
Messenger also provides a JMS 'application server' that can be deployed in
any Servlet engine, such as Websphere, to manage your subscriptions. So it
should be a good fit.

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>