Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Listener ports doesn't go down

40 views
Skip to first unread message

cremersstijn

unread,
Nov 2, 2009, 8:51:20 AM11/2/09
to
Hi,

We are using listener ports to connect to jms topcis.
But we there are exceptions in the handling of the incoming messages, the listener ports doens't go down after x tries. It keeps trying to handle the message.
How does the listener ports need to be configured to go down after x tries?

This is our configuration at the moment:
Maximum sessions: 1
Maximum retries: 0
Maximum messages: 1

We are connecting the a JCAPS JMS provider.

Thanks!

mamwl1

unread,
Nov 2, 2009, 11:14:11 AM11/2/09
to
Hi.

Details on how to configure this (with a WebSphere MQ slant) are here:
http://www.ibm.com/developerworks/websphere/library/techarticles/0405_titheridge/0405_titheridge.html

But basically the fact that Maximum retries = 0 means that you should already get the behavior you desire. However that relies on the optional JMSXDeliveryCount value being set by the JCAPS JMS provider. If it isn't it won't work.

Do you have an example of one of the exceptions you mention?

Cheers, Matt.

cremersstijn

unread,
Nov 3, 2009, 2:19:20 AM11/3/09
to
This is the exception that we received, it occurred because the database was down for maintenance:


2009-11-01 03:36:15,152 ERROR [org.hibernate.util.JDBCExceptionReporter] - The application requester cannot establish the connection. (Connection refused: connect)DSRA0010E: SQL State = 08001, Error Code = -99,999
2009-11-01 03:36:15,152 ERROR [org.hibernate.ejb.AbstractEntityManagerImpl] - Unable to mark for rollback on PersistenceException:
java.lang.UnsupportedOperationException
at org.hibernate.transaction.WebSphereExtendedJTATransactionLookup$TransactionManagerAdapter.setRollbackOnly(WebSphereExtendedJTATransactionLookup.java:161)
at org.hibernate.ejb.AbstractEntityManagerImpl.markAsRollback(AbstractEntityManagerImpl.java:421)
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:576)
at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:614)
at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:226)
at com.ibm.ws.jpa.management.JPAExEmInvocation.persist(JPAExEmInvocation.java:348)
at com.ibm.ws.jpa.management.JPAEntityManager.persist(JPAEntityManager.java:109)
at com.nike.mst.job.dao.InterfaceMessageDaoBean.persist(InterfaceMessageDaoBean.java:45)
at com.nike.mst.tracy.service.POMasterDownloadServiceBean.createInterfaceMessage(POMasterDownloadServiceBean.java:158)
at sun.reflect.GeneratedMethodAccessor76.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:547)
at com.nike.mst.interceptor.PerformanceLogger.logPerformance(PerformanceLogger.java:36)
at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor(InterceptorProxy.java:227)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:526)
at com.nike.mst.interceptor.TraceLogger.logMethodEntry(TraceLogger.java:36)
at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor(InterceptorProxy.java:227)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:526)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.doAroundInvoke(InvocationContextImpl.java:184)
at com.ibm.ejs.container.EJSContainer.invoke(EJSContainer.java:5545)
at com.nike.mst.tracy.service.EJSLocal0SLPOMasterDownloadServiceBean_a9a80934.createInterfaceMessage(EJSLocal0SLPOMasterDownloadServiceBean_a9a80934.java)
at com.nike.mst.job.service.AbstractDownloadServiceBean.process(AbstractDownloadServiceBean.java:76)
at sun.reflect.GeneratedMethodAccessor75.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:547)
at com.nike.mst.interceptor.PerformanceLogger.logPerformance(PerformanceLogger.java:36)
at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor(InterceptorProxy.java:227)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:526)
at com.nike.mst.interceptor.TraceLogger.logMethodEntry(TraceLogger.java:36)
at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.container.interceptors.InterceptorProxy.invokeInterceptor(InterceptorProxy.java:227)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.proceed(InvocationContextImpl.java:526)
at com.ibm.ejs.container.interceptors.InvocationContextImpl.doAroundInvoke(InvocationContextImpl.java:184)
at com.ibm.ejs.container.EJSContainer.invoke(EJSContainer.java:5545)
at com.nike.mst.tracy.service.EJSLocal0SLPOMasterDownloadServiceBean_a9a80934.process(EJSLocal0SLPOMasterDownloadServiceBean_a9a80934.java)
at com.nike.mst.tracy.service.POMasterProcessorMDBBean.handleMessage(POMasterProcessorMDBBean.java:98)
at com.nike.mst.tracy.service.POMasterProcessorMDBBean.onMessage(POMasterProcessorMDBBean.java:79)
at com.ibm.ejs.jms.listener.MDBWrapper$PriviledgedOnMessage.run(MDBWrapper.java:302)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
at com.ibm.ejs.jms.listener.MDBWrapper.callOnMessage(MDBWrapper.java:271)
at com.ibm.ejs.jms.listener.ServerSession.onMessage(ServerSession.java:671)
at com.ibm.ejs.jms.listener.ServerSession.dispatch(ServerSession.java:623)
at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ejs.jms.listener.ServerSessionDispatcher.dispatch(ServerSessionDispatcher.java:37)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:96)
at com.ibm.ejs.container.MDBWrapper.onMessage(MDBWrapper.java:132)
at com.ibm.ejs.jms.listener.MDBWrapper.onMessage(MDBWrapper.java:242)
at com.stc.jms.client.SessionImpl.runCC(SessionImpl.java:841)
at com.stc.jms.client.STCSession.run(STCSession.java:425)
at com.ibm.ejs.jms.JMSSessionHandle.run(JMSSessionHandle.java:970)
at com.ibm.ejs.jms.listener.ServerSession.connectionConsumerOnMessage(ServerSession.java:891)
at com.ibm.ejs.jms.listener.ServerSession.run(ServerSession.java:483)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)

mamwl1

unread,
Nov 10, 2009, 12:28:03 PM11/10/09
to
Hi.

Sorry about the delay in responding to you. The exception below would be enough to drive the message listener port shutdown logic IF JMSXDeliveryCount was set. However reading the JCAPS JMS documentation at
http://search.sun.com/docs/index.jsp?qt=JMSXdeliveryCOunt&col=docs_en&locale=en

implies that it won't be set unless the message has been delivered to an error queue. So basically it will not work.

Cheers, Matt.

0 new messages