weblogic.jms.common.JMSException: Destination not found

Spring JIRA | John Baker | 9 years ago
  1. 0

    Weblogic has a strange 'feature' where by an InitialContext created in one thread can not be used in another when security credentials have been provided. I personally think this design is a little silly, but BEA are unlikely to listen. The default message listener container does not recover a connection when it's failed, and the exception suggests it's due to this 'feature'. Here is the exception: java.lang.SecurityException: [Security:090398]Invalid Subject: principals=[eventfetcher] at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:195) at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:338) at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252) at weblogic.jndi.internal.ServerNamingNode_921_WLStub.lookup(Unknown Source) at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:374) at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:362) at weblogic.rmi.cluster.BasicReplicaHandler.refreshReplicaList(BasicReplicaHandler.java:506) at weblogic.rmi.cluster.BasicReplicaHandler.failOver(BasicReplicaHandler.java:206) at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:257) at weblogic.jms.frontend.FEConnectionFactoryImpl_922_WLStub.connectionCreateRequest(Unknown Source) at weblogic.jms.client.JMSConnectionFactory.setupJMSConnection(JMSConnectionFactory.java:238) at weblogic.jms.client.JMSConnectionFactory.createConnectionInternal(JMSConnectionFactory.java:299) at weblogic.jms.client.JMSConnectionFactory.createConnection(JMSConnectionFactory.java:205) at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:184) at org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContaine r.java:401) at com.db.websso.jms.WeblogicMessageListenerContainer.createSharedConnection(WeblogicMessageListenerContainer.java:41 ) at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContain er.java:386) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageLi stenerContainer.java:782) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageLi stenerContainer.java:764) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageLis tenerContainer.java:892) I had implemented a hack to partly solve the problem by extending the listener, but it's not completely effective. The result is that some threads seem to recover, while others continue to fail (and I can not currently explain why, given my hack re-creates the JNDI in the current thread!). Here's the hack: protected Connection createSharedConnection() throws JMSException { // Associate JNDI variables (user and password) with this thread for the benefit // of the WL drivers. try { InitialContext ic = new InitialContext(jndiTemplate.getEnvironment()); } catch (NamingException e) { logger.warn(e.getMessage()); } return super.createSharedConnection(); } It's not very nice and it would be better to find a long term decent solution to this problem. Until a solution is in place, this object (and other JMS functionality, such as multiple threads and the JmsTemplate) will fail to work correctly with Weblogic. I'm happy to test possible solutions if someone with indepth experience of the Spring JMS code can put forward suggestions. Thanks, John

    Spring JIRA | 9 years ago | John Baker
    weblogic.jms.common.JMSException: Destination not found
  2. 0

    [#HJMS-208] Queue browser hangs on Weblogic messages greater than 200 KB - HermesJMS

    hermesjms.org | 1 year ago
    weblogic.jms.common.JMSException: weblogic.messaging.dispatcher.DispatcherException: weblogic.messaging.dispatcher.DispatcherException: java.lang.Exception: Browser not found
  3. Speed up your debug routine!

    Automated exception search integrated into your IDE

  4. 0

    Error with Remote JMS

    Oracle Community | 7 years ago | 481348
    java.lang.Exception: Connection not found

    1 unregistered visitors
    Not finding the right solution?
    Take a tour to get the most out of Samebug.

    Tired of useless tips?

    Automated exception search integrated into your IDE

    Root Cause Analysis

    1. java.lang.Exception

      Destination not found

      at weblogic.messaging.dispatcher.InvocableManager.invocableFind()
    2. weblogic.messaging.dispatcher
      InvocableManager.invocableFind
      1. weblogic.messaging.dispatcher.InvocableManager.invocableFind(InvocableManager.java:107)
      1 frame
    3. weblogic.jms.dispatcher
      InvocableManagerDelegate.invocableFind
      1. weblogic.jms.dispatcher.InvocableManagerDelegate$MyInvocableManager.invocableFind(InvocableManagerDelegate.java:298)
      2. weblogic.jms.dispatcher.InvocableManagerDelegate.invocableFind(InvocableManagerDelegate.java:222)
      2 frames
    4. weblogic.jms.backend
      BESessionImpl.invoke
      1. weblogic.jms.backend.BESessionImpl.createBEConsumer(BESessionImpl.java:339)
      2. weblogic.jms.backend.BESessionImpl.createConsumer(BESessionImpl.java:412)
      3. weblogic.jms.backend.BESessionImpl.invoke(BESessionImpl.java:310)
      3 frames
    5. weblogic.messaging.dispatcher
      DispatcherImpl.dispatchSync
      1. weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:759)
      2. weblogic.messaging.dispatcher.DispatcherImpl.dispatchSync(DispatcherImpl.java:178)
      2 frames
    6. weblogic.jms.dispatcher
      DispatcherAdapter.dispatchSync
      1. weblogic.jms.dispatcher.DispatcherAdapter.dispatchSync(DispatcherAdapter.java:43)
      1 frame
    7. weblogic.jms.frontend
      FESession$2.run
      1. weblogic.jms.frontend.FEConsumer.<init>(FEConsumer.java:258)
      2. weblogic.jms.frontend.FESession$2.run(FESession.java:989)
      2 frames
    8. weblogic.security.acl
      AuthenticatedSubject.doAs
      1. weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
      1 frame
    9. weblogic.security.service
      SecurityManager.runAs
      1. weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
      1 frame
    10. weblogic.jms.frontend
      FESession.invoke
      1. weblogic.jms.frontend.FESession.consumerCreate(FESession.java:985)
      2. weblogic.jms.frontend.FESession.invoke(FESession.java:2876)
      2 frames
    11. weblogic.messaging.dispatcher
      DispatcherServerRef$2.run
      1. weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:759)
      2. weblogic.messaging.dispatcher.DispatcherServerRef.invoke(DispatcherServerRef.java:276)
      3. weblogic.messaging.dispatcher.DispatcherServerRef.handleRequest(DispatcherServerRef.java:141)
      4. weblogic.messaging.dispatcher.DispatcherServerRef.access$000(DispatcherServerRef.java:36)
      5. weblogic.messaging.dispatcher.DispatcherServerRef$2.run(DispatcherServerRef.java:112)
      5 frames
    12. weblogic.work
      ExecuteThread.run
      1. weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
      2. weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
      2 frames