5 Replies Latest reply on Oct 20, 2005 4:38 AM by vaidyatcr

    XaConnectionFactory not bound...

    groo

       

      "groo" wrote:
      Hi

      I tried to install mySQL as my default datasource with JBoss. I followed the steps mentioned in the JBoss tutorial. JBoss tries again and again to reconnect to JMS provider and gets the following error :


      WARN [JMSContainerInvoker] JMS provider failure detected:
      javax.jms.JMSException: Error creating the dlq connection: XaConnectionFactory not bound


      Here is my config and code :

      -JBoss 3.2.3
      -Mysql 4.0.17

      -mysql-connector-java-3.0.10-stable-bin.jar placed in server/default/lib
      -hsqldb-ds.xml and hsqldb-jdbc2-service.xml removed

      here is my mysql-ds.xml :
      <?xml version="1.0" encoding="UTF-8"?>
      
      <-datasources>
       <local-tx-datasource>
       <jndi-name>DefaultDS</jndi-name>
       <connection-url>jdbc:mysql://localhost:3306/jbossdb</connection-url>
       <driver-class>com.mysql.jdbc.Driver</driver-class>
       <!--<driver-class>org.gjt.mm.mysql.Driver</driver-class>-->
      <user-name>jboss</user-name>
      <-password>password</-password>
      
       </local-tx-datasource>
      </-datasources>
      


      note : I had to put a "-" before datasource and password in this post because these tags weren't printing

      I also modified the depends in my mysql-jdbc2-service.xml.xml :


      jboss.jca:service=LocalTxCM,name=DefaultDS


      and the standardjbosscmp-jdbc.xml :


      datasource set to : java:/DefaultDS
      datasource mapping set to : mySQL

      I searched in the other topics and I find that some people had similar problems but I found no solutions in the replies.

      Anyone have ideas or tips to help me solve this problem ?

      Thanks


        • 1. Re: XaConnectionFactory not bound...
          wdrai

           

          "wdrai" wrote:
          I had the same problem.

          I solved it by changing QueueFactoryRef and TopicFactoryRef to java:/ConnectionFactory instead of java:/XAConnectionFactory in jms-ds.xml.

          I don't understand why the XAConnectionFactory is not bound with MySQL, perhaps someone could explain how it is supposed to work.


          • 2. Re: XaConnectionFactory not bound...
            groo

             

            "groo" wrote:
            I changed it as you told me wdrai but unfortunately, I got a ConnectionFactory not bound error instead of a XaConnectionFactory not bound...


            • 3. Re: XaConnectionFactory not bound...
              hagar

              I know this is an old topic, but I think I found what the problem was.

              I'm using Postgres and have till now used jboss 3.2.3, I tryed to move to 3.2.4 and 3.2.5 (wrote on a topic, but Adrian came with the faq message), but got the same error as written about here. Now I have tryed on 3.2.6 and ofcourse got the same error. I looked around the on the site, without success, and then I took a look... there was a new file in the deploy/jms folder "hsqldb-jdbc-state-service.xml". I renamed it to "postgres-jdbc-state-service.xml" and all my problems went away.

              I'm writing this so other with the same problem can get some help, maybe someone will write a little hint in the faq?

              Regards,
              Martin

              • 4. Re: XaConnectionFactory not bound...
                hagar

                Sorry, I didn't notice that "groo" was using 3.2.3. That makes my post as being placed in the wrong topic.

                Martin

                • 5. Re: XaConnectionFactory not bound...
                  vaidyatcr

                  Hello,

                  We had the same problem too while moving from Firebird to MySql.

                  This is the jms-ds.xml file we used for Firebird :

                  <connection-factories>
                   <tx-connection-factory>
                   <jndi-name>FirebirdDS</jndi-name>
                   <xa-transaction/>
                   <adapter-display-name>Firebird Database Connector</adapter-display-name>
                   <config-property name="Database" type="java.lang.String">${streetwise.url}</config-property>
                   <user-name>${streetwise.username}</user-name>
                   <password>${streetwise.password}</password>
                   <track-connection-by-tx>true</track-connection-by-tx>
                   <min-pool-size>0</min-pool-size>
                   </tx-connection-factory>
                  </connection-factories>
                  


                  But MySql seems to need local data sources. So please use the ds version that ships with Jboss in the examples folder. (http://wiki.jboss.org/wiki/Wiki.jsp?page=SetUpAMysqlDatasource)

                  As for the DLQ error, remember to change the name of the ConnectionManager attribute to LocalTxCM instead of TxCM in the *-jdbc2-service.xml and *-jdbc-state-service.xml files.