users@glassfish.java.net

Re: Sun Application Server 9: JMS Issues

From: Farooq Muhammed <farooq_1231_at_yahoo.com>
Date: Tue, 8 Jan 2008 23:07:25 -0800 (PST)

I am sorry if i forgot to mention that i am not using
any MDB. Its a standalone application which performs
jndi lookup for ConnectionFactory and Queue.

I am using ObjectMessage to encapsulate a serializable
class. The message is first recieved, the object is
extracted, processed and then encapsulated again in a
new message.

I will send you the broker logs in a while. I am using
Sun Application Server 9.1 Update 1

--- Ramesh Parthasarathy
<Ramesh.Parthasarathy_at_Sun.COM> wrote:

> Hi,
> In your MDB are you sending the same message (that
> you received) to
> another destination (q or topic) ?
> Could you also post the broker log file
>
(gfhome/domains/domain1/imq/instances/imqbroker/log/log.txt)
> Are you using 9.1 or 9.1UR1
>
> Thanks
>
>
>
> Farooq Muhammed wrote:
> > Hi,
> >
> > I am posting this to the mailing list instead of
> the
> > discussion forum because i am unable to post a
> thread
> > at java.net GlassFish, although i have a
> registered
> > user. (If anyone can help me with that it'll be
> great)
> >
> > I am using Sun Application Server 9 for an
> application
> > which sends/receives messages to jms queues. A
> > listener is registered for each queue. The
> onMessage
> > method for the listener is working fine and
> receiving
> > messages correctly. I have also verified that
> there is
> > no unhandled exception in the onMessage method, so
> > this ensures that the messages are getting
> > acknowldeged.
> >
> > The problem that i am facing is that whenever i
> > restart the application (by obtaining a new
> connection
> > from the pool and starting a new session), all the
> > previous messages are redelivered again as if they
> > were never acknowledged. I have checked the server
> > logs and found 2 exceptions as below:
> >
> >
>
[#|2008-01-08T00:30:05.000+0500|INFO|sun-appserver9.1|javax.enterprise.system.stream.out|_ThreadID=38;_ThreadName=Session7104454069156718592;|
> > DirectConsumer:Caught Exception delivering
> > messagecom.sun.messaging.jmq.io.Packet cannot be
> cast
> > to com.sun.messaging.jms.ra.DirectPacket|#]
> >
> >
>
[#|2008-01-08T11:05:16.921+0500|WARNING|sun-appserver9.1|javax.jms.Connection.mqjmsra|_ThreadID=37;_ThreadName=RMI
> > TCP
> >
>
Connection(10)-127.0.0.1;_RequestID=10c9dd3c-1075-4dda-a005-2aac850f8e0c;|MQJMSRA_DC2001:
> > connectionId=7446164700626631168:_destroy():called
> on
> > a connection that was not closed.|#]
> >
>
[#|2008-01-08T11:05:16.937+0500|FINE|sun-appserver9.1|javax.enterprise.resource.resourceadapter|_ThreadID=37;_ThreadName=RMI
> > TCP
> >
>
Connection(10)-127.0.0.1;ClassName=com.sun.enterprise.resource.AbstractResourcePool;MethodName=destroyResource;_RequestID=10c9dd3c-1075-4dda-a005-2aac850f8e0c;|RAR5035:Unexpected
> > exception while destroying resource. To get
> exception
> > stack, please change log level to FINE.
> > com.sun.enterprise.resource.PoolingException
> > at
> >
>
com.sun.enterprise.resource.ConnectorAllocator.destroyResource(ConnectorAllocator.java:178)
> > at
> >
>
com.sun.enterprise.resource.AbstractResourcePool.destroyResource(AbstractResourcePool.java:924)
> > at
> >
>
com.sun.enterprise.resource.AbstractResourcePool.emptyPool(AbstractResourcePool.java:1507)
> > at
> >
>
com.sun.enterprise.resource.PoolManagerImpl.killPool(PoolManagerImpl.java:574)
> > at
> >
>
com.sun.enterprise.resource.PoolManagerImpl.killAllPools(PoolManagerImpl.java:867)
> > at
> >
>
com.sun.enterprise.server.ApplicationServer.onTermination(ApplicationServer.java:574)
> > at
> >
>
com.sun.enterprise.server.Shutdown.startShutdown(Shutdown.java:76)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.invokeShutdownEventListener(AdminEventMulticaster.java:1501)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.handleShutdownEvent(AdminEventMulticaster.java:1490)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:480)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
> > at
> >
>
com.sun.enterprise.admin.server.core.channel.AdminChannelServer.sendNotification(AdminChannelServer.java:121)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> > at
> >
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> > at
> java.lang.reflect.Method.invoke(Method.java:597)
> > at
> >
>
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> > at
> >
>
sun.rmi.transport.Transport$1.run(Transport.java:159)
> > at
> java.security.AccessController.doPrivileged(Native
> > Method)
> > at
> >
>
sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> > at
> >
>
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> > at
> >
>
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> > at
> >
>
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> > at
> >
>
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
> > at
> >
>
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> > at java.lang.Thread.run(Thread.java:619)
> > java.lang.NullPointerException
> > at
> >
>
com.sun.messaging.jmq.jmsserver.service.imq.IMQDirectService.checkConnectionId(IMQDirectService.java:2454)
> > at
> >
>
com.sun.messaging.jmq.jmsserver.service.imq.IMQDirectService.destroyConnection(IMQDirectService.java:453)
> > at
> >
>
com.sun.messaging.jms.ra.DirectConnection._destroy(DirectConnection.java:715)
> > at
> >
>
com.sun.messaging.jms.ra.ManagedConnection.destroy(ManagedConnection.java:332)
> > at
> >
>
com.sun.enterprise.resource.ConnectorAllocator.destroyResource(ConnectorAllocator.java:175)
> > at
> >
>
com.sun.enterprise.resource.AbstractResourcePool.destroyResource(AbstractResourcePool.java:924)
> > at
> >
>
com.sun.enterprise.resource.AbstractResourcePool.emptyPool(AbstractResourcePool.java:1507)
> > at
> >
>
com.sun.enterprise.resource.PoolManagerImpl.killPool(PoolManagerImpl.java:574)
> > at
> >
>
com.sun.enterprise.resource.PoolManagerImpl.killAllPools(PoolManagerImpl.java:867)
> > at
> >
>
com.sun.enterprise.server.ApplicationServer.onTermination(ApplicationServer.java:574)
> > at
> >
>
com.sun.enterprise.server.Shutdown.startShutdown(Shutdown.java:76)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.invokeShutdownEventListener(AdminEventMulticaster.java:1501)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.handleShutdownEvent(AdminEventMulticaster.java:1490)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:480)
> > at
> >
>
com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
> > at
> >
>
com.sun.enterprise.admin.server.core.channel.AdminChannelServer.sendNotification(AdminChannelServer.java:121)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> > Method)
> > at
> >
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>
=== message truncated ===



      ____________________________________________________________________________________
Never miss a thing. Make Yahoo your home page.
http://www.yahoo.com/r/hs