Author:
SJC

Message:
You have three endpoints(^1), one in each of your application servers.   Each 
message will be delivered to one of the endpoints.  When an endpoint encounters 
an error and message delivery fails, that endpoint will be stopped (because 
you've set the ActSpec setting to true) and the message will rollback onto the 
Queue.  Depending on other settings the failed message may then be sent to one 
of the other endpoints, or it may be sent to an exception destination 
(dead-letter queue), or the messaging system may suspend delivery of all 
messages from that queue.

I can't be sure I understand what you mean by "the other two continue to roll 
endless".  If you mean they continue to process messages then that's correct 
behaviour (as described above). If you mean they continuously log errors then 
that might also be correct, but you'll need to supply some more information 
(starting with what error string is logged) to clarify things.  What are you 
doing to effect or simulate the delivery failure? When message delivery is 
working, do you see messages being processed by each of the three app servers 
in turn?

Hope that helps.
/Stephen

^1 Configuring the Activation Specification and the JMS Queue at the cluster 
scope is almost certainly the right thing to do, because this makes a single 
definition of these objects available to each of the app servers in the 
cluster. However putting these definitions at cluster scope doesn't mean 
there's only one endpoint. Each server in the cluster creates its own local 
in-memory object from this definition.  There will always be a local object in 
each server (JVM) irrespective of whether you configure a separate definition 
at each of the servers, or just the one at cluster scope, or just the one at 
cell scope.

To respond to this post, please click the following link:
<http://www.ibm.com/developerworks/forums/thread.jspa?messageID=14895431>

____________________________________
Unsubscribe via the "binocular" icon on the web

Reply via email to