JMS connections

by the way, iit, can you be a little more specific as to how you handle cases in which the messages are still sent to the router in case of a network failure, I have one machine on which the server is running and another on which a QueueSender is sending messages in a tight loop. Now in case of a network cable pullout and reconnection afterwards, i am not able to receive messages in the Queue on the server those that were sent when the cable was not connected,? If there is a solution to this, I would be glad to know.
thanks
Bob

by the way, iit, can you be a little more specific as
to how you handle cases in which the messages are
still sent to the router in case of a network failure,
I have one machine on which the server is running and
another on which a QueueSender is sending messages in
a tight loop. Now in case of a network cable pullout
and reconnection afterwards, i am not able to receive
messages in the Queue on the server those that were
sent when the cable was not connected,? If there is a
solution to this, I would be glad to know.The messages will stay in the routing queue of the sender's router which will reconnect automatically. Once the routing connection is established again, messages are forwarded to the destination router. All that is completely transparent to JMS clients because it's on the routing level.

Similar Messages

  • Problem with transacted JMS connection factory and transaction timeouts

              We encountered an interesting problem using transacted JMS connection factories.
              An EJB starts a container managed transaction and tries to validate a credit card
              before creating some information to a database for the user, in case of success
              an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              duration is about the same as the transactions timeout (in this case the default
              30 seconds) sometimes the database inserts is committed but the JMS insert is
              rollbacked. How can this be?
              If the authorization duration is much longer than 30 seconds everything works
              fine (both database and JMS inserts rollbacked), the same is true if a rollback
              is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              if the duration is approximately the same as the transaction timeout, it appears
              that the database insert is not timeouted but the JMS insert is. How can this
              be if they are both participating in the same transaction.
              The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              configure our own factory with user transactions enabled.
              Any help appreciated!
              

    Tomas Granö wrote:
              > We encountered an interesting problem using transacted JMS connection factories.
              > An EJB starts a container managed transaction and tries to validate a credit card
              > before creating some information to a database for the user, in case of success
              > an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              > duration is about the same as the transactions timeout (in this case the default
              > 30 seconds) sometimes the database inserts is committed but the JMS insert is
              > rollbacked. How can this be?
              It should not be.
              >
              > If the authorization duration is much longer than 30 seconds everything works
              > fine (both database and JMS inserts rollbacked), the same is true if a rollback
              > is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              > if the duration is approximately the same as the transaction timeout, it appears
              > that the database insert is not timeouted but the JMS insert is. How can this
              > be if they are both participating in the same transaction.
              >
              > The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              > is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              > configure our own factory with user transactions enabled.
              >
              > Any help appreciated!
              Make sure that your session is not "transacted". In other words,
              the first parameter to createSession() must be false. There is an
              unfortunate name re-use here. If a session is "transacted", it
              maintains an independent "inner transaction" independent of the
              outer transaction. From the above description, it seems unlikely
              that your application has this wrong, as you say that
              "setRollbackOnly" works - but please check anyway.
              Make sure that you are using a true XA capable driver and database
              (XA "emulation" may not suffice)
              Beyond the above, I do not see what can be going wrong. You
              may want to try posting to the transactions and jdbc newsgroups. Note
              that JMS is appears to be exhibiting the correct behavior, but the
              JDBC operation is not. The JDBC operation appears to have
              its timeout independent of the transaction monitor's timeout.
              Tom
              

  • I am not able to create a JMS connection from a custom component in UCM

    I am trying to create a custom component which makes a JMS connection and inserts messages in JMS Queue.
    THe JMS server is hosted on Weblogic Application Server.
    When the code runs I am getting the factory object and the queue object.
    But when I try to get a connection it throws an error as pasted below.
    WHen I googled the same error It has shown a simliar problem in TOmcat in sun thread
    It said two jar files xerces.jar and xml-apis.jar are obsolete.
    I replaced with the new version.
    still the same problem occurred
    Please help
    Pasting the code and exception here
    Code __________________________________________
    import java.util.Date;
    import java.util.Hashtable;
    import javax.jms.*;
    import javax.naming.*;
    import weblogic.jms.client.WLConnectionImpl;
    import weblogic.jms.extensions.*;
    import javax.rmi.PortableRemoteObject;
    public class SimpleProducer {
    public static void drive() {
    final int NUM_MSGS;
         NUM_MSGS = 93;
    Context jndiContext = null;
    Hashtable<String, String> ht;
              ht = new Hashtable<String, String>();
              ht.put(Context.INITIAL_CONTEXT_FACTORY,
                        "weblogic.jndi.WLInitialContextFactory");
              ht.put(Context.PROVIDER_URL, "t3://punitp52975d:7001");
    try {
         jndiContext = new InitialContext(ht);
    } catch (NamingException e) {
    System.out.println("Could not create JNDI API context: " +
    e.toString());
    System.exit(1);
    ConnectionFactory connectionFactory = null;
    Destination dest = null;
    try {
                   Object home = jndiContext.lookup("CNFT"); // where iiopTestDS is jndi name for my DataSource.
    connectionFactory =(ConnectionFactory)PortableRemoteObject.narrow(home , ConnectionFactory.class);
         Object home1 = jndiContext.lookup("QUEUE2"); // where iiopTestDS is jndi name for my DataSource.
    dest =(Destination)PortableRemoteObject.narrow(home1 , Destination.class);
         /*connectionFactory = (ConnectionFactory) jndiContext.lookup(
    "CNFT");
    dest = (Destination) jndiContext.lookup("QUEUE2");
    System.out.println("connectionFactory,dest "+connectionFactory+dest);*/
    } catch (Exception e) {
    System.out.println("JNDI API lookup failed: " + e.toString());
    e.printStackTrace();
    System.exit(1);
    //WLConnectionImpl connection = null;
    WLConnection connection = null;
    WLMessageProducer producer = null;
    try {
                   System.out.println("Getting Connection "+(WLConnection) connectionFactory.createConnection());
    //connection = (WLConnection) connectionFactory.createConnection();
                   System.out.println("Connection created");
    WLSession session =
    (WLSession) connection.createSession(false, Session.CLIENT_ACKNOWLEDGE);
    producer = (WLMessageProducer) session.createProducer(dest);
    WLMessage message = (WLMessage) session.createTextMessage();
    //TextMessage message = session.createTextMessage();
    for (int i = 91; i < NUM_MSGS; i++) {
    ((TextMessage) message).setText("This is message " + (i + 1));
    Long l = new Date().getTime();
    message.setLongProperty("ReleasedDate",l );
    System.out.println("Sending message: " + ((TextMessage) message).getText());
    producer.send(message);
    producer.send(session.createMessage());
    } catch (Exception e) {
    System.out.println("Exception occurred: " + e.toString());
    } catch (Throwable et) {
    System.out.println("Exception occurred: " + et.toString());
    et.printStackTrace();
    finally {
    if (connection != null) {
    try {
    connection.close();
    } catch (Exception e) {
                             System.out.println("*************Instantiating Producer***************");
    Exception_________________________________________________________________
    Exception occurred: java.lang.NoSuchMethodError: javax.xml.parsers.SAXParserFactory.getSchema()Ljavax/xml/validation/Schema;
    java.lang.NoSuchMethodError: javax.xml.parsers.SAXParserFactory.getSchema()Ljavax/xml/validation/Schema;
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.<init>(SAXParserImpl.java:124)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.newSAXParserImpl(SAXParserFactoryImpl.java:115)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.setFeature(SAXParserFactoryImpl.java:143)
    at weblogic.xml.jaxp.WebLogicSAXParserFactory.<init>(WebLogicSAXParserFactory.java:62)
    at weblogic.rmi.internal.wls.WLSRMIEnvironment.getSAXParser(WLSRMIEnvironment.java:136)
    at weblogic.rmi.internal.DescriptorManager.getDescriptorAsMap(DescriptorManager.java:170)
    at weblogic.rmi.internal.DescriptorManager.getDescriptorAsMap(DescriptorManager.java:159)
    at weblogic.rmi.internal.DescriptorManager.createRuntimeDescriptor(DescriptorManager.java:104)
    at weblogic.rmi.internal.DescriptorManager.getBasicRuntimeDescriptor(DescriptorManager.java:85)
    at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:51)
    at weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:37)
    at weblogic.rmi.internal.OIDManager.makeServerReference(OIDManager.java:194)
    at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:175)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceRemote(RemoteObjectReplacer.java:120)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:103)
    at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:223)
    at weblogic.rmi.internal.OIDManager.initializeDGCServer(OIDManager.java:231)
    at weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:144)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceRemote(RemoteObjectReplacer.java:120)
    at weblogic.rmi.utils.io.RemoteObjectReplacer.replaceObject(RemoteObjectReplacer.java:103)
    at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:223)
    at weblogic.corba.server.naming.ReferenceHelperImpl.exportObject(ReferenceHelperImpl.java:233)
    at weblogic.rmi.extensions.PortableRemoteObject.exportObject(PortableRemoteObject.java:34)
    at weblogic.messaging.dispatcher.DispatcherImpl.export(DispatcherImpl.java:85)

    This is probably related to this other issue http://www.adobeforums.com/webx/.59b7fbab/0.
    Jasmin

  • Error when creating a new JMS connection factory in GlassFish V3 b57

    When I use the admin console and try to create a new JMS connection factory in GlassFish V3 b57, the operation fails with the error message
    An error has occurred: Can't find ConfigModel.Property for attr -connection-validation-required on interface com.sun.enterprise.config.serverbeans.ConnectorConnectionPool
    Should I better report this in the GlassFish news forum (http://forums.java.net/jive/forum.jspa?forumID=56&start=0)?
    p.s. I launch the admin console from within NetBeans 6.7.1 (the server started before the IDE). WIth version b 56, creating a JMS connection factory worked fine.
    Best regards,
    Michael Justin

    This bug does not apear in the nightly build (b58) now so everything looks fine again.
    Greetings,
    Michael

  • How to find out status of JMS Connection ( connected or closed )

    Is there a way to find out the status ( connected or closed ) of JMS Connection at any point of time . JMS Connection interface doesn't seem to have any isAlive( ) sort of method ?
    I'm using a shared instance JMS Connection and if someone calls connection.close() on this instance the code starts flunking.

    Crap isn't it! Would also be useful for creating a JMS connection pool, or for testing connections that stay open for time time and may be closed by network problems etc.
    I can think of a couple of options (haven't tested them so may be flawed)
    1. Extend your vendors QueueConnectionFactory object to return a decorated Connection, which adds an isAlive() method and records internally whether someone has called .close(); This could be tricky if you use JNDI to retrieve the QCF - you'll have to bind your custom QCF and remove the old one. Much easier if you use a bean factory like Spring.
    2. You may be able to do this with the underlying vendor's API. If you choose this option put all the vendor specific code in a separate class and abstract it behind an interface. In future if you change to a JMS provider that does not support this feature, you can always change your isAlive() method return true no matter what;
    3. Wrap the JMS sender / receiver in an Adapter class. The adapter delegates send / receive methods to the wrapped class, but if it receives a JMS exception will reconnect and try again. A second JMS Exceptions should be thrown back to the client. All your client code sees is a single send / receive method as if it was using a normal JMS sender / receiver.

  • Error in looking up the JMS Connection Factory

              Hi,
              I am using weblogic6.1. I created a JMS Connection factory from administrator
              console with the name QueueConnectionFactory..But when i restart the server and
              try to look up that factory its giving an NameNotFoundException...This is the
              entry of the factory in config.xml
              <JMSConnectionFactory JNDIName="QueueConnectionFactory"
              Name="QueueConnectionFactory" Targets="myserver"/>
              But if i change reapply the target server to myserver from admin console whenever
              restart the server it works fine..
              I dont know where is the problem..Can u please update me on the problem if u people
              have any idea.
              The trace of the exceptions i got is as below:
              java.rmi.RemoteException: javax.naming.NameNotFoundException: Unable to
              resolve QueueConnectionFactory. Resolved
              : '' Unresolved:'QueueConnectionFactory' ; remaining name ''
              java.rmi.RemoteException: javax.naming.NameNotFoundException: Unable to resolve
              QueueConnectionFactory. Resolved: '' Unr
              esolved:'QueueConnectionFactory' ; remaining name ''
              Thanx
              Regards,
              Narayan
              

              Hi Zach,
              No, I dont think ur interpretation is right..Once the entry corresponding
              to JMS Connection Factory is there in config.xml, the server should automatically
              bind it at the time of booting.. right. Why should this administrator server come
              into the picture.
              Thanx
              "Zach" <[email protected]> wrote:
              >Don't know. Sounds like the admin server is not notifying JMS of the
              >changes under certain situations. You might post in the management.console
              >newsgroup.
              >
              >_sjz.
              >
              >"Narayan" <[email protected]> wrote in message
              >news:[email protected]...
              >>
              >> Hi,
              >> I am using weblogic6.1. I created a JMS Connection factory from
              >administrator
              >> console with the name QueueConnectionFactory..But when i restart the
              >server and
              >> try to look up that factory its giving an NameNotFoundException...This
              >is
              >the
              >> entry of the factory in config.xml
              >>
              >> <JMSConnectionFactory JNDIName="QueueConnectionFactory"
              >> Name="QueueConnectionFactory" Targets="myserver"/>
              >> But if i change reapply the target server to myserver from admin console
              >whenever
              >> restart the server it works fine..
              >> I dont know where is the problem..Can u please update me on the problem
              >if
              >u people
              >> have any idea.
              >> The trace of the exceptions i got is as below:
              >> ****************
              >> java.rmi.RemoteException: javax.naming.NameNotFoundException:
              >Unable to
              >> resolve QueueConnectionFactory. Resolved
              >> : '' Unresolved:'QueueConnectionFactory' ; remaining name ''
              >> java.rmi.RemoteException: javax.naming.NameNotFoundException: Unable
              >to
              >resolve
              >> QueueConnectionFactory. Resolved: '' Unr
              >> esolved:'QueueConnectionFactory' ; remaining name ''
              >>
              >> **********************
              >>
              >> Thanx
              >> Regards,
              >> Narayan
              >>
              >>
              >
              >
              

  • JMS Adapter (for DI) does not allow passing username and password to JMS connection

    Post Author: PLed76
    CA Forum: Data Integration
    JMS Adapter (for DI) does not allow passing username and password to JMS connection. It has those fields only for MSMQ. Our Production environment does not allow us to connect to JMS (we use Tibco EMS) anonymously, so it prevents us from use of Data Integrator. Is there any way to pass those params, or obtain the correct version of JMS Adapter, or obtain source codes of the JMS Adapter so we can correct them ourselves (we can send you the corrected sources back) ? Thanks in advance for any help. (PL)ed76 Renaissance Capital

    Bump - Were having the same issue.
    Has anyone found a way to connect to Tibco with a user/pwd?
    Version 14.0.297.

  • HOw to test the jms connection?

    HI all,
    how to test the jms connection in xi?
    regards
    kish

    HI,
    We can see the JMS sender or reciver side .. in RWB .. see  communicaiton channel mononitoring,., also..
    We can access it through browser.. it depends upon the proocol type .. like sonic or webspeare MQ..or ...
    see below links
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/886a3c3a860657e10000000a114084/frameset.htm
    /people/alessandro.guarneri/blog/2006/01/04/jms-sender-adapter-handling-too-short-lines
    /people/william.li/blog/2006/11/13/how-to-use-saps-webas-j2ees-jms-queue-in-exchange-infrastructure
    content conversion https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f02d12a7-0201-0010-5780-8bfc7d12f891
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/97171dd3-0401-0010-5195-b43f556e6ce9
    Chilla

  • Cannot bind tibco's jms connection factory to wls jndi

    we are using wls 6.1 sp2. I am trying to bind tibco's jms connection factory
    and queue from a standalone client to weblogic's jndi tree so that apps on wls
    can lookup these object in wls jndi locally. I have included the required classes
    in the classpath for both the client and wls. I am able to bind the queue successfully
    and am able to use it successfully too, but I am not able to bind the tib's queue
    or topic connection factory. I am getting the following errors. I checked and
    double checked the classpath and
    Start server side stack trace:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationExcep
    tion
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    ; nested exception is:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    com.tibco.tibjms.n
    aming.TibjmsFederatedTopicConnectionFactory; InstantiationException
    Start server side stack trace:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    com.tibco.tibjms.naming.Ti
    bjmsFederatedTopicConnectionFactory; InstantiationException
    Start server side stack trace:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    <<no stack trace available>>
    anybody any ideas.
    I am also trying to bind the tib's jndi tree in wls jndi tree through a reference
    object and am passing a composite name for lookup. I am getting a cannotproceedexception.
    I wonder if the weblogic jndi can be federated.
    anybody any ideas or pointers
    thanks
    Devaraju, Sushant

    Seems there is a bug in the tibco jms software.
    thanks
    Devaraju, Sushant
    "sushant" <[email protected]> wrote:
    >
    we are using wls 6.1 sp2. I am trying to bind tibco's jms connection
    factory
    and queue from a standalone client to weblogic's jndi tree so that apps
    on wls
    can lookup these object in wls jndi locally. I have included the required
    classes
    in the classpath for both the client and wls. I am able to bind the queue
    successfully
    and am able to use it successfully too, but I am not able to bind the
    tib's queue
    or topic connection factory. I am getting the following errors. I checked
    and
    double checked the classpath and
    Start server side stack trace:
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception
    is:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationExcep
    tion
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown
    Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    ; nested exception is:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    com.tibco.tibjms.n
    aming.TibjmsFederatedTopicConnectionFactory; InstantiationException
    Start server side stack trace:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown
    Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    com.tibco.tibjms.naming.Ti
    bjmsFederatedTopicConnectionFactory; InstantiationException
    Start server side stack trace:
    java.io.InvalidClassException: com.tibco.tibjms.naming.TibjmsFederatedTopicConnectionFactory;
    InstantiationException
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:94)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:123)
    at weblogic.jndi.internal.RootNamingNode_WLSkel.invoke(Unknown
    Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    End server side stack trace
    <<no stack trace available>>
    anybody any ideas.
    I am also trying to bind the tib's jndi tree in wls jndi tree through
    a reference
    object and am passing a composite name for lookup. I am getting a cannotproceedexception.
    I wonder if the weblogic jndi can be federated.
    anybody any ideas or pointers
    thanks
    Devaraju, Sushant

  • Why do the number of active JMS connections increase?

    <strong>Problem</strong>
    - Number of active JMS connections and current JMS messages increases until the Weblogic instances crash with an OutOfMemory exception
    <strong>Setup</strong>
    - Weblogic v9.2.3, Cluster with 4 Nodes
    - A JMS Message is sent from a MDB in Weblogic to a distributed queue which has a member on each of the 4 Weblogic nodes. The session is created as follows session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE), the message delivery mode is set programmatically to persistent and the delivery mode override of the queue setup is set to persistent too
    - Standalone JMS client processes: each one is attached to <strong>all</strong> 4 nodes. Each one uses a unique JMS message selector so that we have more than one queue consumer for one queue but every message is exactly dedicated to one queue consumer. We us weblogic.jar for the clients.
    - Use of Weblogic auto reconnect feature. JMS client code:
    Connection connection = this.connectionFactory.createQueueConnection();
    final WLConnection wlconnection = (WLConnection)connection;
    wlconnection.setReconnectPolicy(JMSConstants.RECONNECT_POLICY_ALL);
    wlconnection.setTotalReconnectPeriodMillis(-1);
    wlconnection.setReconnectBlockingMillis(-1);
    <strong>Remarks and Questions</strong>
    - There are no pending JMS messages which is good
    - In our setup, each JMS client is connected to all 4 nodes as the messages are not distributed to all nodes: if a message is put to Queue A but the client is only connected to Queue B, the message is NOT transfered from Queue A to Queue B. We set the parameter "Forward Delay" to 5 seconds with no effects. Is this the normal behavior?
    - Not all JMS clients are visible in the Weblogic console under JMS Services -&gt; JMS Servers -&gt; [Server] -&gt; Monitoring -&gt; Active Connections. Which one are visible? Which one are not visible? There are also clients where the number of connections is not zero but stays constant; we know that as several independent clients on different hosts are started and the IP adress is visible in the Weblogic console. Why....?
    - What reasons can lead to increasing connections? Is this due to client or server problems? Do we have to acknowledge the message in the onMessage(Message) method of the client JMS consumer? So far as I know, we don't have to.
    - Are the increasing number of current messages due to the increasing number of JMS connections?
    - May the RECONNECT_POLICY_ALL policy produce this problem?
    Any hint is appreciated.
    Peter
    Edited by: pkeller on 23.10.2008 17:08

    To answer the question about the forwarding of messages from one queue to another myself: As mentioned at http://forums.bea.com/thread.jspa?threadID=400000611, the forwarding for queues does only work if all queue consumers are attached to the same queue. This means that our setup is OK.
    But the main question is still unanswered: why do the number of active JMS connections increase? I forgot to mention that
    - all messages arrive at the clients and that no exceptions are visible in the log
    - if you kill the client, the connections are still visible in the Weblogic console!?
    Please help as this problem is very urgent.
    Peter
    Edited by: pkeller on 24.10.2008 09:06
    Edited by: pkeller on 24.10.2008 09:10

  • Maximum JMS Connections

              Hi,
              I would like to know what is the maximum JMS connections weblogic server can
              handle anytime. And where do we set this parameter? we have a group of Message
              Listeners listening to a Queue on weblogic by opening JMS connections at the same
              time. So I was wondering how many JMS clients can Weblogic handle?? And also does
              it impact the performance of weblgic server.
              Thanx,
              Sankas
              

              Thanks for the information guys. It was very helful.
              -Sankas
              Tom Barnes <[email protected]> wrote:
              >Each remote JVM to the WL server multiplexes network calls over a single
              >socket
              >connection, and each remote JVM may have many JMSConnections into the
              >WL server. A
              >single server can support thousands of remote JVMs, and tens of thousands
              >of
              >JMSConnections -- even with the default thread-pool sizes. Clustering
              >and
              >distributed destinations can help one scale higher. Of course, performance
              >and
              >scalability are highly application and hardware dependent, and the best
              >thing to do
              >is create a benchmark that emulates your particular apps characteristics
              >and see
              >how it scales...
              >
              >Tom, BEA
              >
              >Sankas wrote:
              >
              >> Shean,
              >> I did not have anything in mind. But if you see the weblogic console
              >there
              >> is a default parameter "JMS Thread Pool Size = 15" under the Server
              >section in
              >> the services/JMS Tab .
              >> I thought this was the JMSConnections count in the server.
              >> Well I think it would be good to know how far can we go
              >> with the JMS connections thing.
              >>
              >> Thanx,
              >> Sankas
              >>
              >> "Shean-Guang Chang" <[email protected]> wrote:
              >> > It will depend on the memory resource you used for the JVM (both
              >WLS
              >> >server
              >> >and client). There is no design limit for this. Do you have a number
              >> >in
              >> >mind?
              >> >"Sankas" <[email protected]> wrote in message
              >> >news:[email protected]...
              >> >>
              >> >> Hi,
              >> >> I would like to know what is the maximum JMS connections weblogic
              >> >server can
              >> >> handle anytime. And where do we set this parameter? we have a group
              >> >of
              >> >Message
              >> >> Listeners listening to a Queue on weblogic by opening JMS connections
              >> >at
              >> >the same
              >> >> time. So I was wondering how many JMS clients can Weblogic handle??
              >> >And
              >> >also does
              >> >> it impact the performance of weblgic server.
              >> >>
              >> >> Thanx,
              >> >> Sankas
              >> >
              >> >
              >
              

  • How WebLogic7.0 & 8.1 JMS connect to MSMQ?

              Hi Sir,
              Is it possible that i use WebLogic JMS connect to MSMQ(Microsoft)?
              If it possible, how can i configure/implement ? Do I have to create adapter class
              for MSMQ?
              Thanks
              Yos
              

    You may be able to find a JMS wrapper for MSMQ (search
              google), in which case you can integrate using the same
              methods as for any other JMS vendor.
              Another option is to use the the WL JMS C client
              within a MS program, or even to use "ActiveJMS"
              .net wrapper from sourceforge to wrap WL JMS
              within a MS program.
              Another option is to call into MS (or vice-versa)
              using WL's JCOM feature.
              Another option is to integrate using web services -
              which is the method often pushed by MS.
              "weblogic.developer.interest.webservices"
              Another option is to consult the WLI newsgroup,
              "weblogic.integration.developer" to see if WLI
              has pre-built MSMQ adapters.
              Tom
              Yos wrote:
              > Hi Sir,
              > Is it possible that i use WebLogic JMS connect to MSMQ(Microsoft)?
              > If it possible, how can i configure/implement ? Do I have to create adapter class
              > for MSMQ?
              > Thanks
              > Yos
              

  • WLS 7.0.4 - JMS Connection Factory - Server Affinity - issues in log file

    <b>WLS 7.0.4 - JMS Connection Factory - Server Affinity - issues in log file</b>
              We are using WLS 7.0.4 - One of JMS connection factory setting in admin console we selected "Server Affinity" options.
              We see this messages appear in Weblogic log file,
              ####<Apr 24, 2006 1:56:53 AM EDT> <Error> <Cluster> <liberatenode4.dc2.adelphia.com> <node4_svr> <ExecuteThrea
              d: '4' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <> <000123> <Conflict start: You tried to bi
              nd an object under the name sbetrmi2 in the JNDI tree. The object you have bound from liberatenode2.dc2.adelp
              hia.com is non clusterable and you have tried to bind more than once from two or more servers. Such objects ca
              n only deployed from one server.>
              and then,
              ####<Apr 24, 2006 1:58:12 AM EDT> <Error> <Cluster> <liberatenode5.dc2.adelphia.com> <node5_svr> <ExecuteThrea
              d: '7' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <> <000125> <Conflict Resolved: sbetrmi2 for
              the object from liberatenode5.dc2.adelphia.com under the bind name sbetrmi2 in the JNDI tree.>
              Should we use 'load balancing option' instead of 'server affinity' ?
              Any thuoghts?
              Thanks in adv.
              Vijay

    Test Reply
              <Vijay Kumar> wrote in message news:[email protected]..
              > <b>WLS 7.0.4 - JMS Connection Factory - Server Affinity - issues in log
              > file</b>
              >
              > We are using WLS 7.0.4 - One of JMS connection factory setting in admin
              > console we selected "Server Affinity" options.
              >
              > We see this messages appear in Weblogic log file,
              > ####<Apr 24, 2006 1:56:53 AM EDT> <Error> <Cluster>
              > <liberatenode4.dc2.adelphia.com> <node4_svr> <ExecuteThrea
              > d: '4' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
              > <000123> <Conflict start: You tried to bi
              > nd an object under the name sbetrmi2 in the JNDI tree. The object you have
              > bound from liberatenode2.dc2.adelp
              > hia.com is non clusterable and you have tried to bind more than once from
              > two or more servers. Such objects ca
              > n only deployed from one server.>
              >
              > and then,
              > ####<Apr 24, 2006 1:58:12 AM EDT> <Error> <Cluster>
              > <liberatenode5.dc2.adelphia.com> <node5_svr> <ExecuteThrea
              > d: '7' for queue: '__weblogic_admin_rmi_queue'> <kernel identity> <>
              > <000125> <Conflict Resolved: sbetrmi2 for
              > the object from liberatenode5.dc2.adelphia.com under the bind name
              > sbetrmi2 in the JNDI tree.>
              >
              >
              > Should we use 'load balancing option' instead of 'server affinity' ?
              >
              > Any thuoghts?
              >
              > Thanks in adv.
              > Vijay

  • Can't deploy a jms connection factory

    I am getting errors when trying to deploy a jms connection factory.  Here is the xml file jms-factories.xml:
    <?xml version="1.0" encoding="utf-8"?>
    <jms-factories>
    <application-name>MyApplicationName</application-name>
    <connection-factory>
      <connection-factory-type>QueueConnectionFactory</connection-factory-type >
         <factory-name>MyQueueConnectionFactory</factory-name>
      <context-factory-type>
      <link-factory-name>jmsfactory/default/MyConnectionFactory</link-factory-name>
      <initial-context-factory>
          com.sap.engine.services.jndi.InitialContextFactoryImpl
      </initial-context-factory>
      <provider-url>localhost</provider-url>
      <security-principal>Administrator</security-principal>
      </context-factory-type>
    </connection-factory>
    </jms-factories>
    Below is the error:
    java.rmi.RemoteException: Error occurred while starting application in whole cluster and wait.; nested exception is:
         com.sap.engine.services.deploy.exceptions.ServerDeploymentException: Clusterwide exception: server ID 5215450:com.sap.engine.services.jmsconnector.exceptions.BaseDeploymentException: Class loading error: com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Object not found in lookup of MyConnectionFactory.
         at com.sap.engine.services.jndi.implserver.ServerContextImpl.lookup(ServerContextImpl.java:650)
         at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:344)
         at com.sap.engine.services.jndi.implclient.ClientContext.lookup(ClientContext.java:638)
         at javax.naming.InitialContext.lookup(InitialContext.java:351)
         at javax.naming.InitialContext.lookup(InitialContext.java:351)
         at com.sap.engine.services.jmsconnector.container.JmsContainerImpl.loadFactory(JmsContainerImpl.java:1306)
         at com.sap.engine.services.jmsconnector.container.JmsContainerImpl.prepareStart(JmsContainerImpl.java:577)
         at com.sap.engine.services.deploy.server.application.StartTransaction.prepareCommon(StartTransaction.java:233)
         at com.sap.engine.services.deploy.server.application.StartTransaction.prepare(StartTransaction.java:193)
         at com.sap.engine.services.deploy.server.application.ApplicationTransaction.makeAllPhasesOnOneServer(ApplicationTransaction.java:380)
         at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesImpl(ParallelAdapter.java:421)
         at com.sap.engine.services.deploy.server.application.StartTransaction.makeAllPhasesImpl(StartTransaction.java:539)
         at com.sap.engine.services.deploy.server.application.ParallelAdapter.runInTheSameThread(ParallelAdapter.java:171)
         at com.sap.engine.services.deploy.server.application.ParallelAdapter.makeAllPhasesAndWait(ParallelAdapter.java:315)
         at com.sap.engine.services.deploy.server.DeployServiceImpl.startApplicationAndWait(DeployServiceImpl.java:3163)
         at com.sap.engine.services.deploy.server.DeployCommunicatorImpl.startApplicationAndWait(DeployCommunicatorImpl.java:674)
         at com.sap.engine.services.deploy.server.DeployCommunicatorImpl.startApplicationAndWait(DeployCommunicatorImpl.java:658)
         at com.sap.engine.services.jmsconnector.container.JmsManagerImpl.deployJmsResource(JmsManagerImpl.java:281)
         at com.sap.engine.services.jmsconnector.command.DeployJmsResource.exec(DeployJmsResource.java:81)
         at com.sap.engine.services.shell.processor.environment.CommandBase.exec(CommandBase.java:132)
         at com.sap.engine.services.shell.processor.Interpreter.applyLineCommand(Interpreter.java:391)
         at com.sap.engine.services.shell.processor.Interpreter.apply(Interpreter.java:150)
         at com.sap.engine.services.shell.processor.Shell.work(Shell.java:148)
    I am actually trying to do an automated deploy but I kept getting this error so I am trying to manually deploy it with the J2EE Engine Console tool.  The command is:
    deploy_jms_resource d:\jay\jms-factories.xml
    Anybody have any ideas?  At the top of the stack trace it mentions Class loading error but it is not the InitialContextFactoryImpl that is causing the problem because if I enter a totally bogus class name I get a nice ClassNotFound exception.

    Hi Jay,
    Which Reference guide do you mean? You find the jms-resources.xsd here: <a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/55e7d51e-0e01-0010-7b84-a95ee55eadeb">Java Messaging</a>, pages 52-58.

  • Active JMS Connections

    Are Active JMS Connections as viewed through the console (by clicking on Monitor all Active JMS Connections... ) really active? These numbers never seem to decrease.
              Thanks,
              John
              

    Which one are you talking about?
              JMSServer->Monitor Active JMS Servers, the connection field does change.
              Server->Monitoring->JMS->Monitor all Active JMS Connections, the table does
              reflect the current connections. This works on 6.1 sp2, I don't have other
              version handy to verify.
              .raja
              "John" <[email protected]> wrote in message
              news:[email protected]..
              > Are Active JMS Connections as viewed through the console (by clicking on
              Monitor all Active JMS Connections... ) really active? These numbers never
              seem to decrease.
              >
              > Thanks,
              > John
              

  • How Long Can I cache JMS Connection ?

    Hi
    My servlets need to send messages to queues. For speed, I am creating and caching JMS connection and queue session in the servlet's init() method. The questions are
    1) Will the queue session or connection time out after a couple of days , assumimg the servlet never gets unloaded/reloaded in that period?
    2)Is there a way to figure out a connection /session status before trying to create a sender and catching exceptions ?
    Regards
    -m

    Hi,
    The connections do expire after few days hence the easiest way would be to have a double check ....ie.. as you are caching the connection and when ure trying to create a session from the connection keep a try-catch to determine if the connection has expired and if yes then you can create a new connection and cache it again. Now you can use this cached connection to create the sessions .
    Hope this helps
    neo

Maybe you are looking for

  • Need sample data on AP PO Match

    Hi Can some one help on providing sample on AP PO Match A/P PO Match - an A/P invoice matching transaction for which there is a receipt on the correct purchase order but against a different purchase order line.This accrual transaction tells you that

  • When usung google search I get a listing but when I click on it gets replace with spam

    When usung google search I get a listing but when I click on a link it gets replace with spam. I notice a half blue spiral in front of the link that pops up. == This happened == Every time Firefox opened == every time I use use the Google Search in f

  • Problem configurin​g WSN network in MAX

    HI, I am facing this problem suddenly in using my NI 9792 gateway .The module is getting detected in MAX  It is that I am not able to find the Node option under devices and interfaces of the gateway in MAX. I am using LV2010 and NI WSN 1.2. Correspo

  • ORA-02068 and ORA-03113

    Error 2068 trapped in 2PC on transaction 3.6.12908. Cleaning up. Error stack returned to user: ORA-02068: fatal error has occurred in Instance_name.WORLD. End-of-file has been detected in the communication channel: ORA-03113 Can anyone please share w

  • Both attribute value and description showing on attribute value dropdown list

    Hi All, I am using CRM 7.0 EhP 1 and I have encountered a item I need to address in regard to the display of a Marketing Attribute values on the Account Overview page (BP_HEAD/BPHEADOverview) on the Web Client. The component in question on the page i