Weblogic JMS Client App supporting FSContext?

Can a Weblogic JMS Client app use a different JNDI Initial Context such as Sun's File System Context (com.sun.jndi.fscontext.RefFSContextFactory), instead of the Weblogic Initial Context (weblogic.jndi.WLInitialContextFactory)??
Brian

You need to find a way to bind WLS-JMS objects to the FSContext JNDI provider (e.g., programmaticly). JNDI is a standard and you can use any compliant provider.
The other way around, in WLS you can configure a foreign JNDI provider or foreign JMS server that allow you to lookup objects from a foreign jndi tree via WLS jndi.

Similar Messages

  • Weblogic JMS Client App fails creating queue connection

    Using the example provided from installation: ...\bea\wlserver_10.0\samples\server\examples\src\examples\jms\queue\QueueBrowse.java
    I can successfully connect and display the queue when this test app runs on the local Weblogic Server. When I run the test app on a remote server (not the Weblogic server), I get the following error:
    Exception in thread "main" weblogic.jms.common.JMSException: [JMSClientExceptions:055053]Error creating connection to the server: java.rmi.MarshalException: failed to marshal connectionCreateRequest(Lweblogic.jms.frontend.FEConnectionCreateRequest;); nested exception is:
         java.rmi.UnexpectedException: Failed to parse descriptor file; nested exception is:
         java.lang.NullPointerException
         at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:258)
         at weblogic.jms.client.JMSConnectionFactory.createConnectionInternal(JMSConnectionFactory.java:285)
         at weblogic.jms.client.JMSConnectionFactory.createQueueConnection(JMSConnectionFactory.java:165)
         at com.lodestarcorp.custom.QueueBrowse.init(QueueBrowse.java:53)
         at com.lodestarcorp.custom.QueueBrowse.main(QueueBrowse.java:129)
    Caused by: java.rmi.MarshalException: failed to marshal connectionCreateRequest(Lweblogic.jms.frontend.FEConnectionCreateRequest;); nested exception is:
         java.rmi.UnexpectedException: Failed to parse descriptor file; nested exception is:
         java.lang.NullPointerException
         at weblogic.rjvm.BasicOutboundRequest.marshalArgs(BasicOutboundRequest.java:91)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:332)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
         at weblogic.jms.frontend.FEConnectionFactoryImpl_1001_WLStub.connectionCreateRequest(Unknown Source)
         at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:224)
         ... 4 more
    Caused by: java.rmi.UnexpectedException: Failed to parse descriptor file; nested exception is:
         java.lang.NullPointerException
         at weblogic.rmi.internal.DescriptorManager.createRuntimeDescriptor(DescriptorManager.java:118)
         at weblogic.rmi.internal.DescriptorManager.getBasicRuntimeDescriptor(DescriptorManager.java:89)
         at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:55)
         at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:41)
         at weblogic.rmi.internal.OIDManager.makeServerReference(OIDManager.java:194)
         at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:175)
         at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceSmartStubInfo(RemoteObjectReplacer.java:116)
         at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:102)
         at weblogic.rmi.utils.io.InteropObjectReplacer.replaceObject(InteropObjectReplacer.java:62)
         at weblogic.utils.io.ChunkedObjectOutputStream.replaceObject(ChunkedObjectOutputStream.java:40)
         at weblogic.utils.io.ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(ChunkedObjectOutputStream.java:141)
         at java.io.ObjectOutputStream.writeObject0(Unknown Source)
         at java.io.ObjectOutputStream.writeObject(Unknown Source)
         at weblogic.messaging.dispatcher.DispatcherWrapper.writeExternal(DispatcherWrapper.java:152)
         at weblogic.jms.frontend.FEConnectionCreateRequest.writeExternal(FEConnectionCreateRequest.java:98)
         at java.io.ObjectOutputStream.writeExternalData(Unknown Source)
         at java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source)
         at java.io.ObjectOutputStream.writeObject0(Unknown Source)
         at java.io.ObjectOutputStream.writeObject(Unknown Source)
         at weblogic.rjvm.MsgAbbrevOutputStream.writeObject(MsgAbbrevOutputStream.java:614)
         at weblogic.rjvm.MsgAbbrevOutputStream.writeObjectWL(MsgAbbrevOutputStream.java:605)
         at weblogic.rmi.internal.ObjectIO.writeObject(ObjectIO.java:38)
         at weblogic.rjvm.BasicOutboundRequest.marshalArgs(BasicOutboundRequest.java:87)
         ... 8 more
    Caused by: java.lang.NullPointerException
         at weblogic.rmi.internal.BasicRuntimeDescriptor.createSkeletonClass(BasicRuntimeDescriptor.java:272)
         at weblogic.rmi.internal.BasicRuntimeDescriptor.<init>(BasicRuntimeDescriptor.java:158)
         at weblogic.rmi.internal.BasicRuntimeDescriptor.<init>(BasicRuntimeDescriptor.java:140)
         at weblogic.rmi.internal.DescriptorManager.createRuntimeDescriptor(DescriptorManager.java:110)
         ... 30 more
    FYI: I did create the wlfullclient.jar from the installation.
    Could the problem be related to a proxy issue? It's not a DNS problem (I've tested with the IP address).
    Thanks,
    Brian

    I had this very same issue, in a project I was importing directly individual jars:
         <classpathentry kind="lib" path="lib/javax.jms_1.1.1.jar"/>
         <classpathentry kind="lib" path="lib/weblogic.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.security.identity_1.1.2.1.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.workmanager_1.9.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.workmanager.ja_1.9.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.transaction_2.7.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.rmi.client.ja_1.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.rmi.client_1.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.security.wls_1.0.0.0_6-1-0-0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.utils.full_1.9.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.security_1.0.0.0_6-1-0-0.jar"/>
         <classpathentry kind="lib" path="lib/wlclient.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.utils.classloaders_1.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.management.core_2.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.descriptor_1.9.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.logging_1.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.timers_1.7.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.socket.api_1.2.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.security.digest_1.0.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.weblogic.lifecycle_1.4.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.store_1.7.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.common.security.api_1.0.0.0_6-1-0-0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.utils.wrapper_1.4.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.messaging.kernel_1.8.0.0.jar"/>
         <classpathentry kind="lib" path="lib/com.bea.core.utils.expressions_1.4.0.0.jar"/>
    and everything was working;
    in another project I was importing the "Weblogic System Libraries" libraries, and I was getting the NullPointerException...
    I have the sensation that there is room for improvement in the way libraries are managed.

  • WebLogic JMS client frozen during JMS connection stopping (race condition)

    Hello,
    Our application is using the WebLogic 10.3.1 JMS client generated with wlfullclient5.jar.
    We have sometimes a race condition when the WebLogic server is stopped.
    In about 10% of the cases where the server is stopped, the client application is frozen in the "stop" call (see stack trace #1 below).
    Our understanding is that each JMS API call by the application is translated by a request-response message on the TCP connection to the JMS server. The JMS library sends the request and then wait for the response. From our observations, it looks like there is no local timeout in the JMS library. This means that if the WebLogic server is being stopped just after receiving the "stop" request, it will never send the "stop" response, which means that the application will be stuck forever.
    The same problem also occurs when using JMS bridges between 2 JMS servers (see stack trace #2 below).
    How can we activate a local timeout for all JNDI/JMS calls ?
    Regards,
    metatech
    "AppThread" prio=3 tid=0x0000000100117800 nid=0x2 in Object.wait() [0xffffffff7befe000]
    java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:485)
    at weblogic.messaging.dispatcher.DispatcherWrapperState.triggerPeerGoneAndWait(DispatcherWrapperState.java:607)
    - locked <0xffffffff7509aee8> (a weblogic.messaging.dispatcher.DispatcherWrapperState)
    at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSyncTran(DispatcherWrapperState.java:349)
    at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSyncNoTran(DispatcherWrapperState.java:386)
    at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSync(DispatcherWrapperState.java:252)
    at weblogic.jms.dispatcher.DispatcherAdapter.dispatchSync(DispatcherAdapter.java:43)
    at weblogic.jms.client.JMSConnection.stop(JMSConnection.java:758)
    - locked <0xffffffff7509a640> (a weblogic.jms.client.JMSConnection)
    at weblogic.jms.client.WLConnectionImpl.stop(WLConnectionImpl.java:722)
    at AppSession.closeJMSSession(ConnectorSession.java:499)
    "[ACTIVE] ExecuteThread: '12' for queue: 'weblogic.kernel.Default (self-tuning)'" waiting for lock weblogic.jms.client.JMSXASession@1d363e4 WAITING
    java.lang.Object.wait(Native Method)
    java.lang.Object.wait(Object.java:485)
    weblogic.jms.client.JMSSession.waitForState(JMSSession.java:4778)
    weblogic.jms.client.JMSSession.stop(JMSSession.java:1310)
    weblogic.jms.client.JMSConnection.stop(JMSConnection.java:773)
    weblogic.jms.client.WLConnectionImpl.stop(WLConnectionImpl.java:722)
    weblogic.jms.adapter.JMSBaseConnection.closeInternal(JMSBaseConnection.java:570)
    weblogic.jms.adapter.JMSBaseConnection.access$000(JMSBaseConnection.java:85)
    weblogic.jms.adapter.JMSBaseConnection$2.run(JMSBaseConnection.java:552)

    Hi Tom,
    Thanks for looking at the issue.
    I tried to post the full thread dump as an attachment, but it is not allowed by the forum, so you find it hereunder.
    Regards,
    metatech
    =================
    2010-05-28 12:33:19
    Full thread dump Java HotSpot(TM) 64-Bit Server VM (14.2-b01 mixed mode):
    "Attach Listener" daemon prio=3 tid=0x0000000100c5b800 nid=0x24 waiting on condition [0x0000000000000000]
    java.lang.Thread.State: RUNNABLE
    "ExecuteThread: '0' for queue: 'JmsAsyncQueue'" daemon prio=3 tid=0x0000000100759800 nid=0x23 in Object.wait() [0xffffffff643ff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:91)
         - locked <0xffffffff6f4ed828> (a weblogic.kernel.ServerExecuteThread)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:115)
    "Timer-0" daemon prio=3 tid=0x000000010078c800 nid=0x21 in Object.wait() [0xffffffff647ff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         - waiting on <0xffffffff6f4ee2c0> (a java.util.TaskQueue)
         at java.lang.Object.wait(Object.java:485)
         at java.util.TimerThread.mainLoop(Timer.java:483)
         - locked <0xffffffff6f4ee2c0> (a java.util.TaskQueue)
         at java.util.TimerThread.run(Timer.java:462)
    "weblogic.timers.TimerThread" daemon prio=3 tid=0x00000001008e0000 nid=0x20 in Object.wait() [0xffffffff649ff000]
    java.lang.Thread.State: TIMED_WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at weblogic.timers.internal.TimerThread$Thread.run(TimerThread.java:267)
         - locked <0xffffffff6f4e75d0> (a weblogic.timers.internal.TimerThread)
    "ExecuteThread: '3' for queue: 'default'" daemon prio=3 tid=0x0000000100709000 nid=0x1e waiting for monitor entry [0xffffffff65afe000]
    java.lang.Thread.State: BLOCKED (on object monitor)
         at weblogic.jms.client.JMSConnection.stateChangeListener(JMSConnection.java:1413)
         - waiting to lock <0xffffffff7509a640> (a weblogic.jms.client.JMSConnection)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.run(DispatcherWrapperState.java:682)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.timerExpired(DispatcherWrapperState.java:617)
         at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
         at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
    "ExecuteThread: '2' for queue: 'default'" daemon prio=3 tid=0x000000010055c800 nid=0x1d in Object.wait() [0xffffffff65cff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:91)
         - locked <0xffffffff6f427a80> (a weblogic.kernel.ServerExecuteThread)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:115)
    "ExecuteThread: '1' for queue: 'default'" daemon prio=3 tid=0x000000010055c000 nid=0x1c in Object.wait() [0xffffffff65eff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:91)
         - locked <0xffffffff6f427da0> (a weblogic.kernel.ServerExecuteThread)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:115)
    "ExecuteThread: '0' for queue: 'default'" daemon prio=3 tid=0x00000001006fa800 nid=0x1b in Object.wait() [0xffffffff660ff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:91)
         - locked <0xffffffff6f4280c0> (a weblogic.kernel.ServerExecuteThread)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:115)
    "StateHolder" daemon prio=3 tid=0x0000000100584800 nid=0x1a waiting on condition [0xffffffff66aff000]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
         at java.lang.Thread.sleep(Native Method)
         at StateHolder.run(StateHolder.java:80)
         at java.lang.Thread.run(Thread.java:619)
    "Thread-1" daemon prio=3 tid=0x0000000100554000 nid=0x18 waiting on condition [0xffffffff66cff000]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
         at java.lang.Thread.sleep(Native Method)
         at org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:104)
    "Low Memory Detector" daemon prio=3 tid=0x00000001003d3800 nid=0x16 runnable [0x0000000000000000]
    java.lang.Thread.State: RUNNABLE
    "CompilerThread1" daemon prio=3 tid=0x00000001003cf000 nid=0x15 waiting on condition [0x0000000000000000]
    java.lang.Thread.State: RUNNABLE
    "CompilerThread0" daemon prio=3 tid=0x00000001003cd800 nid=0x14 waiting on condition [0x0000000000000000]
    java.lang.Thread.State: RUNNABLE
    "Signal Dispatcher" daemon prio=3 tid=0x00000001003cb800 nid=0x13 runnable [0x0000000000000000]
    java.lang.Thread.State: RUNNABLE
    "Finalizer" daemon prio=3 tid=0x00000001003a4800 nid=0x12 in Object.wait() [0xffffffff680ff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
         - locked <0xffffffff6f4c7670> (a java.lang.ref.ReferenceQueue$Lock)
         at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
         at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
    "Reference Handler" daemon prio=3 tid=0x00000001003a3000 nid=0x11 in Object.wait() [0xffffffff682ff000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
         - locked <0xffffffff6f401370> (a java.lang.ref.Reference$Lock)
    "Worker" prio=3 tid=0x0000000100117800 nid=0x2 in Object.wait() [0xffffffff7befe000]
    java.lang.Thread.State: WAITING (on object monitor)
         at java.lang.Object.wait(Native Method)
         at java.lang.Object.wait(Object.java:485)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.triggerPeerGoneAndWait(DispatcherWrapperState.java:607)
         - locked <0xffffffff7509aee8> (a weblogic.messaging.dispatcher.DispatcherWrapperState)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSyncTran(DispatcherWrapperState.java:349)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSyncNoTran(DispatcherWrapperState.java:386)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.dispatchSync(DispatcherWrapperState.java:252)
         at weblogic.jms.dispatcher.DispatcherAdapter.dispatchSync(DispatcherAdapter.java:43)
         at weblogic.jms.client.JMSConnection.stop(JMSConnection.java:758)
         - locked <0xffffffff7509a640> (a weblogic.jms.client.JMSConnection)
         at weblogic.jms.client.WLConnectionImpl.stop(WLConnectionImpl.java:722)
         at ConnectorSession.closeJMSSession(ConnectorSession.java:499)
         at ConnectorSession.receiveRequest(ConnectorSession.java:617)
         at ConnectorSession.processRequest(ConnectorSession.java:341)
         at Worker.mainApplication(Worker.java:127)
         at Worker.mainMethod(Worker.java:298)
         at Worker.main(Worker.java:163)
    "VM Thread" prio=3 tid=0x000000010039c800 nid=0x10 runnable
    "GC task thread#0 (ParallelGC)" prio=3 tid=0x000000010011b000 nid=0x3 runnable
    "GC task thread#1 (ParallelGC)" prio=3 tid=0x0000000100121000 nid=0x4 runnable
    "GC task thread#2 (ParallelGC)" prio=3 tid=0x0000000100122800 nid=0x5 runnable
    "GC task thread#3 (ParallelGC)" prio=3 tid=0x0000000100126000 nid=0x6 runnable
    "GC task thread#4 (ParallelGC)" prio=3 tid=0x0000000100127800 nid=0x7 runnable
    "GC task thread#5 (ParallelGC)" prio=3 tid=0x0000000100129000 nid=0x8 runnable
    "GC task thread#6 (ParallelGC)" prio=3 tid=0x000000010012b000 nid=0x9 runnable
    "GC task thread#7 (ParallelGC)" prio=3 tid=0x000000010012c800 nid=0xa runnable
    "GC task thread#8 (ParallelGC)" prio=3 tid=0x000000010012e000 nid=0xb runnable
    "GC task thread#9 (ParallelGC)" prio=3 tid=0x000000010012f800 nid=0xc runnable
    "GC task thread#10 (ParallelGC)" prio=3 tid=0x0000000100131800 nid=0xd runnable
    "GC task thread#11 (ParallelGC)" prio=3 tid=0x0000000100133000 nid=0xe runnable
    "GC task thread#12 (ParallelGC)" prio=3 tid=0x0000000100134800 nid=0xf runnable
    "VM Periodic Task Thread" prio=3 tid=0x00000001003d5800 nid=0x17 waiting on condition
    JNI global references: 818

  • WebLogic JMS Client

    Is there a JMS client for web logic that allows you to be a client to a
              topic, for example an error topic, and will let you monitor it with a web
              app ??
              Robert Simmons Jr.
              Senior Software Engineer
              Ingenium Pharmaceuticals, Munich Germany.
              

    A JSP based application that monitors a JMS Error Destination and provides
              options to delete or reprocess messages is available at dev2dev.bea.com
              under the alpha code section. You should be able to download and try out
              the application. Check it out and let me know if that's what you are
              looking for and also if you need any help in running it.
              The URL is
              http://dev2dev.bea.com/code/codedetail.jsp?productType=weblogic+server&codeT
              ype=alpha+code&highlight=alpha
              Thanks,
              Adarsh
              "Robert Simmons" <[email protected]> wrote in message
              news:[email protected]..
              > Is there a JMS client for web logic that allows you to be a client to a
              > topic, for example an error topic, and will let you monitor it with a web
              > app ??
              >
              > --
              >
              > Robert Simmons Jr.
              > Senior Software Engineer
              > Ingenium Pharmaceuticals, Munich Germany.
              >
              > -
              >
              >
              

  • Inconsistent message publishing times through weblogic JMS client

    Hi,
    We have a weblogic JMS application which we are deploying in a clustered weblogic enviornment. We are using distributed queues/topics with file store. We have both JMS cliient and server running on separate weblogic clusters. Most of the times it will take about 10 milli seconds to push the message into queue, but 1 in 50 messages takes about anywhere between 0.2 sec to 6 secs. Recently for three days it just took 10 msec for all the messages throught these three days and then started behaving erratically again. I am not able to really figure out why there is lot of deviation in the publishing times. When I monitor both my client and server through admin consiole, I don't see any stuck threads, heap size is normal, cpu load is normal, no problems with network. Please help me to figure out the root cause for abnormal publishing times.
    Regards
    Koti

    Could you check if there are JVM garbage collections during some the publishing times.
    In particular check if there are any full garbage collection occuring when you notice such a deviation in the publishing time.

  • WebLogic JMS high memory usage and frequent full GCs

    Hi Team,
                We have below set up in production (and all the lower environment).
    1. WLS: 10.3.6 (64 bit)
    2. Java: HP JDK 1.7.0.06 (64 bit)
    3. Two Manage server instances in cluster with one Migratable target
    4. one JMS server with Persistence store targeted to Migratable target
    5. Messages are persisted in DB
    6. about 37 distributed queues/topics are hosted on one JMS server
    7. .Net JMS clients and WebLogic JMS clients connect to respective JMS distributed Queues/topics to either produce message or consume.
    Since last month, we see that WebLogic Manage server hosting JMS server keeps on chewing memory "even with small (of the order of 28 messages in 4/5 days) load", GC indicates that objects are shifted from PSYoung space to ParOldGen during minor GCs but ParOldGen space keeps on filling up in smaller chunks. After x number of days (where x ranges from 5-7 days), even Full GC is not able to bring down memory significantly and that's when frequent full GCs start with long pauses making JMS highly unstable.
    We don't have JMS Quotas configured but I think something else going on as it is not high on load.  Any additional hints or troubleshooting steps is much appreciated?
    Here is first and last  GC log just to give an idea...
    Heap after GC invocations=661 (full 0):
    {Heap before GC invocations=1 (full 0):
    PSYoungGen      total 1225728K, used 1050624K [9fffffff09c00000, 9fffffff5f400000, 9fffffff5f400000)
      eden space 1050624K, 100% used [0x9fffffff09c00000,0x9fffffff49e00000,0x9fffffff49e00000)
      from space 175104K, 0% used [0x9fffffff54900000,0x9fffffff54900000,0x9fffffff5f400000)
      to   space 175104K, 0% used [0x9fffffff49e00000,0x9fffffff49e00000,0x9fffffff54900000)
    ParOldGen       total 2797568K, used 0K [0x9ffffffe5f000000, 0x9fffffff09c00000, 0x9fffffff09c00000)
      object space 2797568K, 0% used [0x9ffffffe5f000000,0x9ffffffe5f000000,0x9fffffff09c00000)
    PSPermGen       total 49152K, used 47453K [0x9ffffffe1f000000, 0x9ffffffe22000000, 0x9ffffffe5f000000)
      object space 49152K, 96% used [0x9ffffffe1f000000,0x9ffffffe21e57630,0x9ffffffe22000000)
    2014-12-24T09:04:45.118-0700: 15.651: [GC [PSYoungGen: 1050624K->118221K(1225728K)] 1050624K->118293K(4023296K), 0.32600
    15 secs] [Times: user=0.07 sys=0.00, real=0.33 secs]
    {Heap before GC invocations=661 (full 0):
    PSYoungGen      total 1367168K, used 1364256K [9fffffff09c00000, 9fffffff5f400000, 9fffffff5f400000)
      eden space 1333376K, 100% used [0x9fffffff09c00000,0x9fffffff5b220000,0x9fffffff5b220000)
      from space 33792K, 91% used [0x9fffffff5d300000,0x9fffffff5f128030,0x9fffffff5f400000)
      to   space 33664K, 0% used [0x9fffffff5b220000,0x9fffffff5b220000,0x9fffffff5d300000)
    ParOldGen       total 2797568K, used 2654825K [0x9ffffffe5f000000, 0x9fffffff09c00000, 0x9fffffff09c00000)
      object space 2797568K, 94% used [0x9ffffffe5f000000,0x9fffffff0109a5c0,0x9fffffff09c00000)
    PSPermGen       total 151552K, used 147591K [0x9ffffffe1f000000, 0x9ffffffe28400000, 0x9ffffffe5f000000)
      object space 151552K, 97% used [0x9ffffffe1f000000,0x9ffffffe28021cd8,0x9ffffffe28400000)
    2014-12-29T08:18:08.798-0700: 429216.418: [GC [PSYoungGen: 1364256K->33632K(1329792K)] 4019081K->2752791K(4127360K), 0.8
    254362 secs] [Times: user=0.10 sys=0.00, real=0.83 secs]
    Regards,

    Thanks Luz. I have been collecting gclogs and heap dumps (whenever app server is high on memory and frequent GCs with long pauses are seen). So far heap dumps haven't revealed anything specific (may be I am not able to read heap dumps properly ) but looking at GC confirms that app server is consuming allocated heap.I was following Oracle WebLogic server support Patter as you have indicated. I thought about opening a ticket with HP but on high level JVM is doing what is suppose to do i.e allocating memory space as needed and performing GC therefore didn't go that path.
    Any other suggestions that might be useful. One of the things I forgot to mention ( and I will add it to original message), that one of the .Net consumers is not asynchronously connecting to its queue (to consume messages) rather it is synchronously connects and then if it doesn't find messages it disconnects and process goes on every few seconds. I was reading somewhere that frequent JNDI look ups should be avoided. Can this cause memory issue if so then it is strange as this same set up has been there over a year and we never has problem then?
    Regards,

  • JMS error: weblogic.jms.frontend.FEConnectionFactoryImpl_1032_WLStub

    hi weblogic users,
    i have a problem in sending jms messages
    across two different weblogic host/domain.
    the configuration is:
    jms client:
    -JAX-WS webservice web app
    -deployed in WebLogic Server Version: 10.3.1.0
    -host: 192.168.30.133:7011
    -domain: ChSoaAdminServer1
    -can access server's console: http://192.168.1.22:6001/console
    server:
    -jms server, jms module, cf, queue configured
    with subdeployment targeted to the jmsserver
    -deployed in WebLogic Server Version: 10.3.2.0
    -host: 192.168.1.22:6001
    -domain: soa_domain
    -cannot access client's console: http://192.168.30.133:7011/console
    i use standard lookup method in my java client code:
    String settingJmsServer="t3://192.168.1.22:6001";
    String settingCF="jms/adminduk/cf";
    String settingQueue="jms/adminduk/queue/central";
    env=new Hashtable();
    env.put( Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory" );
    env.put(Context.PROVIDER_URL, settingJmsServer);
    ctx = new InitialContext( env );
    System.out.println("-- Destination");
    ds = (Destination) ctx.lookup(settingQueue);
    System.out.println("-- ConnectionFactory");
    cf = (ConnectionFactory) ctx.lookup(settingCF);
    but it's getting exception
    when looking up the connection factory (look at the bottom of my post):
    ok now, how to solve this problem?
    -i tried to change the server to another host with WL 10.3.1.0 installed (so
    it's the same version with the client) and its ok (receiving messages)
    -i tried to deploy the WS client to the same host as the jms (WL 10.3.2.0), so no
    remote lookup needed (java lookup code adjusted), it's ok
    -based on the stack trace:
    "Could not find dynamically generated class:
    'weblogic.jms.frontend.FEConnectionFactoryImpl_1032_WLStub
    (class not found) ..."
    -does it mean do i've to use the same version of WL installed in the client side ??
    -is WL 10.3.2.0 compatible with WL 10.3.1.0 ?
    -is it possible to use a different version of weblogic (in the client/server)
    in using the jms feature ?
    -do the jms server must have access to client's port (7011) for it to work ?
    thanks,
    any info/hints/helps will be appreciated :)
    ---------- start error ---------
    ####<Mar 23, 2010 4:24:51 PM ICT> <Error> <com.sun.xml.ws.server.sei.EndpointMethodHandler>
    <coolpie> <ChSoaAdminServer1> <[ACTIVE] ExecuteThread: '1' for queue:
    'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <> <1269336291921> <BEA-000000>
    <***** ASSERTION FAILED *****[ Could not find dynamically generated class:
    'weblogic.jms.frontend.FEConnectionFactoryImpl_1032_WLStub' ]
    weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ Could not find dynamically
    generated class: 'weblogic.jms.frontend.FEConnectionFactoryImpl_1032_WLStub' ]
         at weblogic.utils.classfile.utils.CodeGenerator.generateClass(CodeGenerator.java:78)
         at weblogic.rmi.internal.StubGenerator.hotCodeGenClass(StubGenerator.java:775)
         at weblogic.rmi.internal.StubGenerator.getStubClass(StubGenerator.java:759)
         at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:786)
         at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:779)
         at weblogic.rmi.extensions.StubFactory.getStub(StubFactory.java:74)
         at weblogic.rmi.internal.StubInfo.resolveObject(StubInfo.java:213)
         at weblogic.rmi.internal.StubInfo.readResolve(StubInfo.java:207)
         at sun.reflect.GeneratedMethodAccessor126.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1061)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1762)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
         at
    weblogic.jms.client.JMSConnectionFactory.readExternal(JMSConnectionFactory.java:382)
         at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
         at
    weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:197)
         at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:564)
         at
    weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:193)
         at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:240)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
         at weblogic.jndi.internal.ServerNamingNode_1031_WLStub.lookup(Unknown Source)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:400)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:388)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at
    weblogic.deployment.jms.ForeignOpaqueReference.getReferent(ForeignOpaqueReference.java:194)
         at weblogic.jndi.internal.WLNamingManager.getObjectInstance(WLNamingManager.java:96)
         at weblogic.jndi.internal.ServerNamingNode.resolveObject(ServerNamingNode.java:377)
         at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:856)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:209)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:388)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at siak.model.MessageManager.init(MessageManager.java:101)
         at siak.ws.SiakWS.sendEvent(SiakWS.java:37)
         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
    weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:101)
         at
    weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:83)
         at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:152)
         at
    com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:264)
         at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:93)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
         at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:249)
         at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:453)
         at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:250)
         at
    com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:140)
         at
    weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:298)
         at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:211)
         at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:297)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at weblogic.wsee.jaxws.JAXWSServlet.service(JAXWSServlet.java:87)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at
    weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java
    :227)
         at
    weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletConte
    xt.java:3588)
         at
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at
    weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
         at
    weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    java.lang.ClassNotFoundException: weblogic.jms.frontend.FEConnectionFactoryImpl_1032_WLStub
         at
    weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:296)
         at
    weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
         at
    weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:55)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
         at
    weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:177)
         at
    weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:36)
         at
    weblogic.utils.classloaders.FilteringClassLoader.findClass(FilteringClassLoader.java:100)
         at
    weblogic.wsee.util.JAXWSClassLoaderFactory$1.findClass(JAXWSClassLoaderFactory.java:45)
         at
    weblogic.utils.classloaders.FilteringClassLoader.loadClass(FilteringClassLoader.java:85)
         at
    weblogic.utils.classloaders.FilteringClassLoader.loadClass(FilteringClassLoader.java:80)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:247)
         at
    weblogic.utils.classloaders.GenericClassLoader.defineCodeGenClass(GenericClassLoader.java:516
         at weblogic.utils.classfile.utils.CodeGenerator.generateClass(CodeGenerator.java:73)
         at weblogic.rmi.internal.StubGenerator.hotCodeGenClass(StubGenerator.java:775)
         at weblogic.rmi.internal.StubGenerator.getStubClass(StubGenerator.java:759)
         at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:786)
         at weblogic.rmi.internal.StubGenerator.generateStub(StubGenerator.java:779)
         at weblogic.rmi.extensions.StubFactory.getStub(StubFactory.java:74)
         at weblogic.rmi.internal.StubInfo.resolveObject(StubInfo.java:213)
         at weblogic.rmi.internal.StubInfo.readResolve(StubInfo.java:207)
         at sun.reflect.GeneratedMethodAccessor126.invoke(Unknown Source)
         at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1061)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1762)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
         at
    weblogic.jms.client.JMSConnectionFactory.readExternal(JMSConnectionFactory.java:382)
         at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
         at
    weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:197)
         at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:564)
         at
    weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:193)
         at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:240)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
         at weblogic.jndi.internal.ServerNamingNode_1031_WLStub.lookup(Unknown Source)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:400)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:388)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at
    weblogic.deployment.jms.ForeignOpaqueReference.getReferent(ForeignOpaqueReference.java:194)
         at weblogic.jndi.internal.WLNamingManager.getObjectInstance(WLNamingManager.java:96)
         at weblogic.jndi.internal.ServerNamingNode.resolveObject(ServerNamingNode.java:377)
         at weblogic.jndi.internal.BasicNamingNode.resolveObject(BasicNamingNode.java:856)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:209)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:214)
         at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:388)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at siak.model.MessageManager.init(MessageManager.java:101)
         at siak.ws.SiakWS.sendEvent(SiakWS.java:37)
         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
    weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:101)
         at
    weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:83)
         at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:152)
         at
    com.sun.xml.ws.server.sei.EndpointMethodHandler.invoke(EndpointMethodHandler.java:264)
         at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:93)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:604)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:563)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:548)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:445)
         at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:249)
         at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:453)
         at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:250)
         at
    com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:140)
         at
    weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:298)
         at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:211)
         at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:297)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at weblogic.wsee.jaxws.JAXWSServlet.service(JAXWSServlet.java:87)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at
    weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java
    :227)
         at
    weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at
    weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletConte
    xt.java:3588)
         at
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at
    weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
         at
    weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    ---------- end error ---------

    1 - A class-not-found is an odd exception to get on a server. Did you perhaps try to add client-only jars to the server classpath? The server classpath is already setup properly to act as a client.
    2 - Its usually not a good practice to create contexts in client code (instead of simply using the Servlet context in your case), or to hard code URLs, dests, and CF references into the code. It works, but can be hard to maintain and inefficient.
    3 - See:
    [ Enhanced Support for Using WebLogic JMS with EJBs and Servlets |  http://download.oracle.com/docs/cd/E15523_01/web.1111/e13727/j2ee.htm#g1329180 ]
    and
    [ Integrating Remote JMS Providers | http://download.oracle.com/docs/cd/E15523_01/web.1111/e13727/interop.htm#JMSPG553 ]
    and the cross-domain advice in
    [ Integration and Multi-Domain Best Practices |
    http://download.oracle.com/docs/cd/E15523_01/web.1111/e13738/best_practice.htm#CACFBCHB ]
    Hope this helps,
    Tom

  • JMS Client disconnects often randomly in Weblogic10.3 cluster setup

    Hi,
    It would be very helpful for us if someone can suggest the way to overcome the below jms issue.
    Our application recently migrated to Weblogic 10.3 from Weblogic8.1, It is a clustered set up with two managed servers each on different solaris machine.
    Client connects to jms using wljmsclient.jar and wlclient.jar with t3 protocol.
    When client starts jms connection, it is getting connected to server with no errors, however we often see that client jms connection disconnects in between,
    It sometimes calls onException() and some times we do not even see any error message in console log when it disconnects,
    When onException() is called, we can see below exception stack trace:
    ==========================
    JMS exception class = weblogic.messaging.dispatcher.DispatcherException: java.rmi.MarshalException: CORBA COMM_FAILURE 1398079697 No; nested exception is:      
         org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 209 completed: No
    weblogic.jms.common.JMSException: weblogic.messaging.dispatcher.DispatcherException: java.rmi.MarshalException: CORBA COMM_FAILURE 1398079697 No; nested exception is:      
         org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 209 completed: No
         at weblogic.jms.dispatcher.DispatcherAdapter.convertToJMSExceptionAndThrow(DispatcherAdapter.java:116)
         at weblogic.jms.dispatcher.DispatcherAdapter.dispatchSyncNoTran(DispatcherAdapter.java:61)
         at weblogic.jms.client.JMSSession.acknowledge(JMSSession.java:2191)
         at weblogic.jms.client.JMSSession.acknowledge(JMSSession.java:2120)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4588)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4233)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3709)
    JMS exception class = java.rmi.MarshalException: CORBA COMM_FAILURE 1398079697 No; nested exception is:      
         org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 209 completed: No
    weblogic.jms.common.LostServerException: java.rmi.MarshalException: CORBA COMM_FAILURE 1398079697 No; nested exception is:      
         org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 209 completed: No
         at weblogic.jms.client.JMSConnection.dispatcherPeerGone(JMSConnection.java:1436)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.run(DispatcherWrapperState.java:692)
         at weblogic.messaging.dispatcher.DispatcherWrapperState.timerExpired(DispatcherWrapperState.java:617)
         at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
    =======================
    When onException() is triggered, TopicConnection and TopicSession gets recreated in program, however jms is not getting reconnected once onException() is called. Some times jms session is lost in between with out any errors in log. We did not see this issue when our app used Weblogic8.1.
    We greatly appreciate if someone can help to resolve this issue.

    Hi,
    This is a common issue if you use wljmsclient.jar and wlclient.jar at client side. Many times we get "org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 209 completed: No" Please try using weblogic.jar at client end or even there is a better option to create the "*wlfullclient.jar*" using the jarBuilder utility provided as part of WebLogic.
    To create the "wlfullclient.jar" please refer to the following link:
    [http://download-llnw.oracle.com/docs/cd/E11035_01/wls100/client/jarbuilder.html#wp1077742|http://download-llnw.oracle.com/docs/cd/E11035_01/wls100/client/jarbuilder.html#wp1077742]
    Thanks
    Jay SenSharma
    http://jaysensharma.woardpress.com

  • Weblogic 10.3 not suporting for MDB to connect remote Weblogic JMS server

    Hi,
    I have a problem with MDB deployed on Weblogic 10.3.It's simple MDB which is communicating with remote weblogic JMS server. I am getting below exception. could some one help how to resolve this issue.
    <Apr 14, 2009 11:28:52 AM PDT> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: ReceiverFromDocumentum is unable to con
    nect to the JMS destination: FMAContractOutboundQueue. The Error was:
    [EJB:011013]The Message-Driven EJB attempted to connect to the JMS connection factory with the JNDI name: FMAConnectionFacto
    ry. However, the object with the JNDI name: FMAConnectionFactory is not a JMS connection factory. NestedException Message is
    :weblogic.jms.client.JMSConnectionFactory cannot be cast to javax.jms.XAConnectionFactory>
    -Sreekanth

    I recall that this particular warning message is sometimes misleading about the root cause of the problem, an issue that I think has been fixed in a patch. The actual problem can be various:
    * The MDB is configured to be transactional, the connection factory exists, but the connection factory isn't configured to be "XA enabled". (I think this is the most likely problem).
    * The connection factory doesn't exist.
    * The object in JNDI with the specified connection factory name isn't actually a connection factory.
    * The dest object in JNDI with the specified name isn't actually a javax.jms.Destination
    Note that its unusual to configure the connection factory name for an MDB that consumes from WebLogic JMS. The default name iis usually sufficient unless custom tuning is required on the connection factory. See the MDB section of the EJB developer guide for more information.
    Tom

  • -- Error during running JMS client --

    Hello ,i m novice in JMS,just trying to Implement my first JMS programming on WL8.1,I m getting error during Run client program
    My client program is below :
    package examples;
    import javax.naming.*;
    import javax.jms.*;
    import java.util.*;
    public class Client
    public static void main(String[] args)throws Exception
         Properties props = System.getProperties();
         props.put(Context.PROVIDER_URL,"t3://localhost:7001");
         props.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
    Context ctx=new InitialContext(System.getProperties());
    TopicConnectionFactory factory=(TopicConnectionFactory)ctx.lookup("javax.jms.TopicConnectionFactory");
    TopicConnection connection = factory.createTopicConnection();
    TopicSession session=connection.createTopicSession(false,Session.AUTO_ACKNOWLEDGE);
    System.out.println("Envi Veraibles" + ctx.getEnvironment().toString());
    System.out.println("Object Retrived "+ctx.lookup("testtopic").toString());
    Topic topic =(Topic)ctx.lookup("testtopic");
    TopicPublisher publisher=session.createPublisher(topic);
    TextMessage msg=session.createTextMessage();
    msg.setText("This is a test message");
    publisher.publish(msg);
    I m getting error during running client ::
    Exception in thread "main" java.lang.ClassCastException: weblogic.jms.client.JMSConnectionFactory  examples.Client.main(Client.java:23)
    i think error is due to this line
    Topic topic =(Topic)ctx.lookup("testtopic");
    Pls Help me
    Thnx in Advance ...

    First of thanks for gave me a Reply.
    (1) System.out.println("Object Retrived "+ctx.lookup("testtopic").toString()); this line is nothing just i wanted to check that program giving me a object or not .and output of this line is
    Object Retrived weblogic.jms.client.JMSConnectionFactory@1f66cff
    (2)Testtopic is not a object but it is JNDI name whichever i specified in webligic-ejb-jar.xml
    (3)i added this line System.out.print("Second output"+ctx.getClass().getName()); and i got this output:
    Second output javax.naming.InitialContext
    but still i m getting same error
    here i m describing my code for ejb-jar.xml
    <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
    <!-- Generated XML! -->
    <ejb-jar>
    <enterprise-beans>
    <message-driven>
    <ejb-name>LogBean</ejb-name>
    <ejb-class>examples.LogBean</ejb-class>
    <transaction-type>Container</transaction-type>
    <message-driven-destination>
    <destination-type>javax.jms.Topic</destination-type>
    </message-driven-destination>
    </message-driven>
    </enterprise-beans>
    <assembly-descriptor>
    <container-transaction>
    <method>
    <ejb-name>LogBean</ejb-name>
    <method-name>*</method-name>
    </method>
    <trans-attribute>Required</trans-attribute>
    </container-transaction>
    </assembly-descriptor>
    </ejb-jar>
    (2)*LogBean.java*
    package examples;
    import javax.ejb.*;
    import javax.jms.*;
    import javax.naming.*;
    public class LogBean implements MessageDrivenBean,MessageListener
         protected MessageDrivenContext ctx;
    public void setMessageDrivenContext(MessageDrivenContext ctx)
         this.ctx=ctx;
    public void ejbCreate()
         System.err.println("ejbCreate()");
         public void onMessage(Message msg)
              if(msg instanceof TextMessage)          {
                   TextMessage tm=(TextMessage)msg;
                   try
                        String text=tm.getText();
                        System.err.println("Received new message:"+text);
                   catch (JMSException e)
                        e.printStackTrace();
    public void ejbRemove()
         System.err.println("ejbRemove()");
    (3)*webogic-ejb-jar.xml*
    <!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN' 'http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd'>
    <!-- Generated XML! -->
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>LogBean</ejb-name>
    <message-driven-descriptor>
    <pool>
    </pool>
    <destination-jndi-name>testtopic</destination-jndi-name>
    </message-driven-descriptor>
    <transaction-descriptor>
    </transaction-descriptor>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    you have already client program ,i sent it on first time.
    Thnx again ...

  • JMS Client hangs while trying to create a TopicSession

    We have a thick client which connects to a WLS 8.1 Sp3 server. At client startup, it subscribes to a distributed topic. Today morning, we noticed that most of the clients started hanging at the point where they try to subcribe to the distributed topic. We had to restart the servers to resolve this issue. I've pasted a part of the thread dump at the end of this message, and would appreciate any feedback on this.
              <br><br>
              This happened on our test servers which run in a cluster, and which have a limited scale license. <br><br>
              Here's the thread dump - <br><br>
              "AWT-EventQueue-1" prio=7 tid=0x009e85d0 nid=0x7f8 in Object.wait() [190ef000..190efd88]<br>
              at java.lang.Object.wait(Native Method)<br>
              - waiting on <0x20217400> (a weblogic.rjvm.ResponseImpl)<br>
              at weblogic.rjvm.ResponseImpl.waitForData(ResponseImpl.java:74)<br>
              - locked <0x20217400> (a weblogic.rjvm.ResponseImpl)<br>
              at weblogic.rjvm.ResponseImpl.getTxContext(ResponseImpl.java:99)<br>
              at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:104)<br>
              at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:137)<br>
              at weblogic.jms.dispatcher.DispatcherImpl_813_WLStub.dispatchSyncFuture(Unknown Source)<br>
              at weblogic.jms.dispatcher.DispatcherWrapperState.dispatchSync(DispatcherWrapperState.java:339)<br>
              <b>at weblogic.jms.client.JMSConnection.createSessionInternal(JMSConnection.java:400)<br>
              at weblogic.jms.client.JMSConnection.createTopicSession(JMSConnection.java:359)<br>
              at com.wellmanage.trading.shared.util.PmwMessageService.subscribe(PmwMessageService.java:373)<br>
              at com.wellmanage.fipmt.client.notification.NotificationListener.subscribeToNotificationMessages(NotificationListener.java:173)<br></b>
              at com.wellmanage.fipmt.client.Main$11.run(Main.java:1174)<br>
              at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)<br>
              at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)<br>
              at com.wellmanage.common.pcsf.client.exception.ExceptionHandlerEventQueue.dispatchEvent(ExceptionHandlerEventQueue.java:26)<br>
              at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)<br>
              at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)<br>
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)<br>
              at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)<br>
              at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)<br>

    Hello,
              Were you able to resolve your problem? How did you resolve it? I am having the same problem.
              Any help will be greatly appreciated!
              Thanks,
              Mamta

  • JMSClientExceptions:055053 -WebLogic10 Cluster - Remote WebLogic JMS - Help

    All,
    We are using a foreign JMS provider from WeLogic 10 cluster to connect to the Remote WebLogic JMS Server. We are getting below error while posting the data to the queue. Any help , ideas as to why this is occuring please?
    / Error
    Error during connection/session creation:weblogic.jms.common.JMSException: [*JMSClientExceptions:055053*]Error creating connection to the server: java.rmi.UnmarshalException: failed to unmarshal class weblogic.jms.client.JMSConnection; nested exception is: java.io.StreamCorruptedException|portal
    Thanks a lot for your help.

    All
    The issue popped up gain. Below is the full stack trace. I confirmed that we are using the t3 URL to connect to remote JMS server (which is Weblogic 10 /JMS). Appreciate any insights help to resolve this issue.
    // Stack Trace
    weblogic.jms.common.JMSException: [JMSClientExceptions:055053]Error creating connection to the server: java.rmi.UnmarshalException:
    failed to unmarshal class weblogic.jms.client.JMSConnection; nested exception is:
    java.io.StreamCorruptedException
    at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:253)
    at weblogic.jms.client.JMSConnectionFactory.createConnectionInternal(JMSConnectionFactory.java:285)
    at weblogic.jms.client.JMSConnectionFactory.createQueueConnection(JMSConnectionFactory.java:165)
    at com.juniper.core.mdb.MessageSender.initSession(MessageSender.java:79)
    at com.juniper.core.mdb.MessageSender.<init>(MessageSender.java:64)
    at com.juniper.core.mdb.MDBHelper.processMessage(MDBHelper.java:98)
    at com.juniper.core.mdb.BaseMDB.onMessage(BaseMDB.java:35)
    at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
    at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
    at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:3964)
    at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    Caused by: java.rmi.UnmarshalException: failed to unmarshal class weblogic.jms.client.JMSConnection; nested exception is:
    java.io.StreamCorruptedException
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:229)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:338)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
    at weblogic.jms.frontend.FEConnectionFactoryImpl_1001_WLStub.connectionCreate(Unknown Source)
    at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:244)
    ... 15 more
    Caused by: java.io.StreamCorruptedException
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1332)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
    at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:195)
    at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:565)
    at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:191)
    at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:227)
    ... 19 more
    Thanks
    Edited by: user3285437 on May 4, 2009 9:26 AM

  • IS XI Support BEA Weblogic JMS Queue

    Hi
    I have a scenario where i have to send and recive message from the Weblogic JMS Queue ..
    Is XI support Weblogic JMS Queue ..if it is which tranport protocol i have to use to connect to Weblogic queue
    SV

    Hi
    Thanks Ravi..
    U mean to say i have to use the Transport Protocol
    Access JMS Provider with JNDI
    I have few more questions like ..
    what needs to filled in Connection parameters:
    JNDI Look up name of Queue Connection Factory:
    JNDI Look up name of JMS Queue:
    Name of JNDI Initial Context Factory:
    JNDI Sever Address:
    JNDI Logon User:
    JNDI Logon Password:
    When i selected the Protocol some default Values came in do i have have to change any thing
    JNDI Look up name:
    JNDI Look up name of JMS Queue:
    Name of JNDI Initial Context:
    as u mentioned in Server address i will put : t3://server:XXX
    and i have given the user id and Password ..
    the user id and password is same for both JNDI logon and JMS Queue User..
    SV

  • JMS Configuration on Two different Weblogic 8.1 App. Servers

    I have two Weblogic8.1 App. Server. Box 1 is configured with JMS connection factory and Topic, also MDB is deployed on it. on Box 2, I am running session bean which is publishing JMS message to the Topic on Box 1.
    While executing it throws error: weblogic.jms.common.JMSException : Connection not found.
    When I try to run exact code (like session bean) from standalone program, From Box 2, it works.
    Note: If I use Box2 with Weblogic 7 AS and execute same session bean, It works.
    Pls. help me out.
    Regards
    Anand Bobade

    I have same interest in this too. I have looked around for some information, but I have no answer yet about deploying weblogic 8.1 on other server other than weblogic server.
    But, there are some information about deploying weblogic 5.x, 6.x, and some part of 7.x in jboss server. You can check these urls:
    http://wiki.jboss.org/wiki/Wiki.jsp?page=FoeDeployerService
    http://wiki.jboss.org/wiki/Wiki.jsp?page=PortingFromWeblogic
    And for anybody who has had any clue, idea, or any information about deploying weblogic 8.1 (and above) outside weblogic server, please kindly share your knowledge.
    Regards,
    Muhyi

  • Weblogic JMS Channel/client connection configuration

    Hi,
    I experience Weblogic to use about 10 channels for each Queue Connection Factory (QCF), is there a way to configure it to use less?
    We had to configure MQ to have 500 Maxchannels instead of default 100.
    Is there a way to configure Weblogic JMS to use less than 10 per QCF? What is recommended to use?
    Regards,
    reZer

    Hi,
    I experience Weblogic to use about 10 channels for each Queue Connection Factory (QCF), is there a way to configure it to use less?
    We had to configure MQ to have 500 Maxchannels instead of default 100.
    Is there a way to configure Weblogic JMS to use less than 10 per QCF? What is recommended to use?
    Regards,
    reZer

Maybe you are looking for

  • Updating BI Beans Catalog object

    I have created a Crosstab Bi Beans Object and loaded it into the Bibcat server using JDeveloper. However, after updating the OLAP cube that the object is based on, I opened up the Bi Beand Object but the new OLAP data does not show up. Is there a way

  • WebDynpro External Web Service Model

    I am writing an application in web dynpro which uses web service model. In that model there are lot of complex data types. External webservice i am using is http://arcweb.esri.com/services/v2/MapImage.wsdl I am facing couple of problems. 1. If the we

  • How to modifie multiple covers artworks?

    Hi, I would like to ask is there a way to modifie all the songs's cover artwork at the same time. Because as we know, we can only modifie ONE artwork per single song in an album each time even all the songs are in the same album, every songs is "wear

  • Macbook pro retina 15 inch - USB connection error repeat

    i'm user of Retina, 15-inch, Late 2013 and bought it week ago. and i found there's connection problem in left side USB port the lightning cable and old cable as well in ipad, iphone. when i connect the devices with cable to left usb port. it repeats

  • Can't access Blog

    New computer, Mac Book Pro with latest version of IWeb. Last night I tried transferring information from my old powerbook. Not only was I not successful, but the power book bit the dust. I have backups where I published to folder from my blog, but a