users@glassfish.java.net

Re: Sun Application Server 9: JMS Issues

From: Ramesh Parthasarathy <Ramesh.Parthasarathy_at_Sun.COM>
Date: Wed, 09 Jan 2008 07:48:18 +0000

Thanks, please send the broker logs.
Meanwhile you could also change the jms-service type to LOCAL - default
being EMBEDDED (requires restart) and see if it solves your problem.

Thanks
-Ramesh

Farooq Muhammed wrote:
> 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
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>