I am using Weblogic 9.1 with a foreign JMS provider. I created the
foreign JMS entries in Weblogic and created all the necessary JNDI
entries in both Weblogic and the foreign JMS provider. The foreign JMS
jar file is put in the lib of the Weblogic server so it is loaded at
startup and available.
After deploying my MDB (configured for AUTO-ACK, no transaction) which
listen to a topic on the foreign JMS server and publishing message on
the topic, the MDB correctly receives and processes the message. However, after
processing of the message, Weblogic apparently attempts to acknowledge
the message but throws an exception since it tries to class the
foreign JMS TopicSession to a Weblogic TopicSession implementation:
####<Apr 21, 2006 11:22:28 AM HST> <Error> <Kernel> <marune>
<examplesServer> <[ACTIVE] ExecuteThread: '0' for queue:
'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <>
<1145654548153> <BEA-000802> <ExecuteRequest failed
java.lang.ClassCastException: com.u1.jms.TopicSession.
java.lang.ClassCastException: com.u1.jms.TopicSession
at weblogic.ejb.container.internal.MDListener$MDMessage.acknowledge(MDListener.java:723)
at weblogic.ejb.container.internal.MDListener.putListener(MDListener.java:221)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:631)
at weblogic.ejb.container.internal.MDListener.run(MDListener.java:670)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
>
I aksed about this in BEA dev2dev newsgroup and got a response that it
may be a known bug with a bug patch available. However, I do not
currently have a BEA license or support, so I cannot verify this.
So, the question is: is there a work around for this bug or a definite
BEA solution ID that will allow me to get a Weblogic patch to fix the problem? |