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
          

Similar Messages

  • 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

  • Connection failover and transaction failover

    Connection failover and transaction failover
    I need to know more about a behavior in a RAC cluster. When a node goes down that is executing one of my transaction through JDBC , does the connection and transaction failover to a new node without me needing to restart tran or reconnect ?
    Please provide some insight
    Thanks

    Transactions are NOT automatically rolled back. The application must do this otherwise the session will get disconnected.
    If you code TAF, all sessions will failover to the backup connection. You can specify that select statements are automatically re-executed after the failover. Insert/update/delete transactions must be explicitly rolled back and resubmitted by the application.
    IF you are using an ORacle Connection pool, the connection pool will automatically cleanup connections to the failed instance, abort inflight transactions. The application will either retry or it will propagate the error to the end user.
    See the whitepaper on the OTN RAC page (otn.oracle.com/rac) Workload Management with Oracle RAC for more information.

  • Using oracle's connection pools and transactional context

    Hi!
    I have an implementations of existing interfaces ( let's call this layer as
    data access layer) which abstracts the connection and transactional session
    from the calling application. This implementaion makes use of Oracles JVM
    inside the oracle database (8.1.7) to create and maintain the connection
    pools and the transactional session (transactional context). I would like
    to create differenent implementation, if the calling application is a
    session bean running inside the weblogic application server. is there way I
    can still use the connection pools and transactinal context that I got from
    the oralce if the calling application is a session bean running inside the
    weblogic app.. server?
    do I have to change any configuration settings in weblogic?. there might
    be two scenarios..
    the data access layer (the classes which deal with the connection pools and
    transactions) might be running inside the oracle's JVM..
    the data access layer might be running inside weblogic application server...
    thanks...
    Srinivas

    Certainly this from SPAM. Now from anothe user :). Note sure whether I should mark you as you as SPAM as you're posting questions which are available in stackoverflow
    http://stackoverflow.com/questions/26531161/biztalk-and-odp-net-connection-pools-and-connection-strings
    Details provided in the other forum should provide you the answer.
    I don’t want to duplicate this thread just for the sake of giving reply.
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • Foreign jms connection factory username and password

    I have to connect to TIBCO as the foreign JMS. I have created a foreign JMS server and configured JNDI properties including username and password. I configured a connection factory and specified username and password as well. Finally, I configured foreign destination.
              In web.xml and corresponding welogic.xml, I am using the resource-ref with Container authentication.
              With the above, I always get the following exception.
              javax.jms.JMSSecurityException: Not permitted
                   at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:499)
                   at com.tibco.tibjms.TibjmsSession._createProducer(TibjmsSession.java:697)
                   at com.tibco.tibjms.TibjmsQueueSession.createSender(TibjmsQueueSession.java:123)
              The above code works fine under the following circumstances:
              * If I don't use any username and passwords.
              * If I pass the username and password to the connection factory when creating the connection. According to the documentation here (http://e-docs.bea.com/wls/docs81/jms/j2ee_components.html#1033768) doing so in an error:(
              Any ideas or suggestions?

    Even though I had configured things in the web.xml and weblogic.xml, I didn't use them. So, instead of using global JNDI, I used java:comp/env JNDI. Once, I used the correct JNDI, the connection is working... I will continue to do further testing.
              > I have to connect to TIBCO as the foreign JMS. I
              > have created a foreign JMS server and configured JNDI
              > properties including username and password. I
              > configured a connection factory and specified
              > username and password as well. Finally, I configured
              > foreign destination.
              >
              > In web.xml and corresponding welogic.xml, I am using
              > the resource-ref with Container authentication.
              >
              > With the above, I always get the following exception.
              >
              >
              > javax.jms.JMSSecurityException: Not permitted
              > at
              > t
              > com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:4
              > 99)
              > at
              > t
              > com.tibco.tibjms.TibjmsSession._createProducer(TibjmsS
              > ession.java:697)
              > at
              > t
              > com.tibco.tibjms.TibjmsQueueSession.createSender(Tibjm
              > sQueueSession.java:123)
              >
              > The above code works fine under the following
              > circumstances:
              > * If I don't use any username and passwords.
              > * If I pass the username and password to the
              > connection factory when creating the connection.
              > According to the documentation here
              > e
              > (http://e-docs.bea.com/wls/docs81/jms/j2ee_components.
              > html#1033768) doing so in an error:(
              >
              > Any ideas or suggestions?

  • I am having problems with the wifi connection on my ipad 4th generation only 3 weeks old. Have left it back to the shop i bought it in and they said they have to send it away now i am left with no ipad. What after sales support do you give really?

    Does anyone else have problems with the wifi connection on their 4th generation  Mine keeps going off line and its only 3 weeks old.I had the ipad mini and this problem never existed. I brought it back to the shop where i bought it Expert Laois last week and they said they couldnt find a problem but had to take it back today as it keeps disconneting from wifi still, anyway they are sending it back for repair and it am left with no ipad.  After spending in excess of 700e i feel that this is really bad after sales service.  I bought something that i want to use now and cant so what  a waste of money it is .

    Thankyou, but the shop said that they spoken to apple and that they have now changed their policy and that they do not give a replacement.  So are you telling me that their information is false.  Also what should they have done.  This problem has existed since i bought it.?????  What should i do?????

  • Both xp and windows 7 have video problems with my VGA connection using TV

    both xp and windows 7 have video problems with my VGA connection using TV as my monitor when it gets to starting up windows no matter what version it will not I have let my mac on all night and still says starting windows or the windows 7 logo and nothing else will happen also when I use a 3rd patty software like peraills or other it works like a charm how to fix it?

    To map the drive on your computer click on Start - RUN - type "\\192.168.1.1" and click ok... When prompted for Username and Password type "admin" and click ok... Now you will be able to see the folder which you have shared on  your router, right click on it and select "Map network drive" and click on finish.
    Now it will map the drive on your computer and you should be able to transfer the file from your computer to the USB drive.

  • Are Connection Factory and JMS Queue supposed to be in JNDI tree

    I have created Connection Factory and JMS Queue. I am expecting to find both in JNDI tree. Where, in the http://localhost:7001/console/consolejndi.portal, could I find them? I mean, in which branch of the JNDI tree?

    Hi,
    You should find them following exactly the way you define their JNDI Names... Make sure you are looking into the JNDI tree for the right managed server... Pay attention into the targets of your connection factory and queue...
    For example, a JNDI name jms.myConnectionFactory (or jms/myConnectionFactory) targeted to soa_server1 will appear under soa_server1 / jms / myConnectionFactory ...
    Hope this helps...
    Cheers,
    Vlad

  • I have iPhone 4. After I upgraded to ios5 I have a problem with Wi-Fi connection with "WPA enterprize" protection. I can define the connection and everything works fine. But after I lose signal or shutoff the WiFi, I cannot re-connect, and need re-define

    I have iPhone 4. After I upgraded to ios5 I have a problem with Wi-Fi connection with "WPA enterprize" protection. I can define the connection and everything works fine. But after I lose signal or shutoff the WiFi, I cannot re-connect, and need re-define the net. It is only in WPA enterprize.
    Thanks,
    Eyal

    I tried this! Somebody suggested it in another thread. It did not work, sadly.

  • Hello I have an Iphone 3, but I had a problem with the wifi connection when I want to connect the wifi icon is gray and I can choose to access the wifi

    hello
    I have an Iphone 3, but I had a problem with the wifi connection when I want to connect the wifi icon is gray and I can choose to access the wifi

    Read here:
    http://support.apple.com/kb/ts1559
    If nothing works, you most likely have a hardware issue.

  • Problem with my internet connection with Mail and others

    Hi
    I seem to have a problem with my internet connection that is through Ethernet. I have just downloaded the update to iLife 9 and the down load speed went from zero to 1.1BB/s but most of the time it downloads at speeds around 8KB/s also Mail some times returns mail sent but there seems to be no problem sending out only that things go faster out than in. My internet speed from my ISP is 500KB/s so as you can see I was at first happy that I was getting speeds in of 1.1MB/s. I have done a diagnostic test through network also fully run Norton and finally run utilities with no problems showing. My ISP is willing to come and have a look at my internet but I some how think it's my computer, any ideas?
    Thanks

    The first thing I would do is completely disable Norton AntiVirus; there are no viruses for Mac OS X, so it can't protect you from something that doesn't exist. It can, however, severely slow down your system. Do that and then restart Mail and see if the problem continues.
    You should also try creating a new User account and test Mail there to see if you experience the same problem; if so, then the issue is systemwide. If not, it's something specific to your regular user account.
    As for your download speed, it's not 1.1MB/s; it's 1.1Mb/s. Upload speed is slower than download speed for both Cable and DSL service. I doubt the problem is your modem/router, but you should try shutting down your Mac and the modem for a few minutes. If your modem/router has a reset button, use it, then restart it and your Mac and see if the problem continues.

  • My new macbook air and new thunderbolt monitor will not work together. the keyboard will not engage and the monitor screen keeps going black. is it a problem with the monitor, connection, laptop?

    my new macbook air and new thunderbolt monitor will not work together. the keyboard will not engage and the monitor screen keeps going black. is it a problem with the monitor, connection, laptop?

    A new Mac comes with 90 days of free tech support from AppleCare.
    AppleCare: 1-800-275-2273
    Call AppleCare. They will help you.
    Best.

  • Problem with my internet connection and modem

    hello!
    i have a very big problem with my internet connection a 56k. i use internet with my internal apple modem (i have an ibook g4). sometimes it works well but sometimes, after being connected, my ibook freezes and i have a black window wich says: "you need to restart your computer".
    i do it, and when i want to connect again, i have a new message wich says " this port of communication does'nt exist. please check your setup and do it again" (in french) i check my preferences in the "preferences" and the modem doesn't appear!! see it my photos here (in french sorry):
    http://h1.ripway.com/diesel/pdf.pdf
    in order to use internet normally, i'm obliged to re-install tiger again and again!! i'm very hungry about this problem because since i'have my connection, i can"t use it as i want!
    please help me!

    Hi David,
    What you've described is a kernel panic. Since reinstalling the OS only alleviates the issue temporarily it's possible that your modem is failing.
    Jrsy

  • 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
              >>
              >>
              >
              >
              

  • 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.

Maybe you are looking for