3 Replies Latest reply on Jun 3, 2003 1:29 PM by michaelzhao

    jms not bound

    michaelzhao

      Hi All,

      I am a new user to jboss. Recently I have a web application project. I used Sun PetStore blueprint as our model and jboss3.2.0_tomcat4.1.24 as our ejb container and web server. The database is MS SQL Server2000. I successfully deploy the web application on the jboss. Everything works fine before the customer click the "check out" and "submit" personal information to the server. I personal believe it is the JMS error. I checked log file and found XAConnectionFactory not bound error. Last week I tried almost every possible to sovle this problem. But still can't.
      I know there are at least three xml file under deploy directory related to JMS service. They are jms-ds.xml, jbossmq-service.xml and jbossmq-destination-service.xml. There are several things I am not clear their relationships. For jms-ds.xml file, there has QueueConnectionRef point to the "java:/XAConnectionFactory" and TopicConnectionFactory point to the "java:/XAConnectionFactory", also in the <tx-connection-factory> block there is a jndi-name which is "JmsXA". For jbossmq-service.xml file, the ConnectionFactoryJNDIRef points to "java:/ConnectionFactory" and the XAConnectionFactoryJNDIRef points to the "java:/XAConnectionFactory". For our case, we have two logical jndi name, one is "jms/QueueConnectionFactory" another is "jms/TopicConnectionFactory". I configure them to "Java:/JmsXA" in the jboss.xml file. When I deploy the application, I get XAConnectionFactory not bound error. If I point "QueueConnectionRef" to "java:comp/env/jms/QueueConnectionFactory" and "TopicConnectionRef" to "java:comp/env/jms/TopicConnectionFactory", I get jms mot bound error.
      If I configure "jms/QueueConnectionFactory" to "java:/ConnectionFactory", I also get XAConnectionFactory not bound error.
      Another weird error message for MDB in the log file is
      "SomeMDB cannot be bound, doesn't have local and localhome interfaces." What's this mean?
      Can anybody help me figure out the problem?

      Thanks,

      Michael

        • 1. Re: jms not bound
          raja05

          Map your local JNDI Name to the physical jndi name. I hope u are using the JVM IL( this should be used if the publisher and subscriber are in the same VM).

          Map your java:comp/env/jms/QueueConnectionFactory and
          java:comp/env/jms/TopicConnectionFactory
          to java:/ConnectionFactory.

          That should solve your first issue. For MDB not bound, post your descriptors.

          -Raj

          • 2. Re: jms not bound
            paultaylor

            Ive been having exactly the samer problem. Could domeone please elaborate on the solution, arent the Connection factories set up as defaults ?

            • 3. Re: jms not bound
              michaelzhao

              Hi Raj,

              According to your suggestion, I mapped QueueConnectinFactory and TopicConnectionFactory to java:/ConnectionFactory. But I still get XAConnectionFactory not bound error. Following is the error message in the log file. Please check it and help me to find the problem.

              Thanks ahead,

              Michael

              2003-06-02 15:13:13,437 DEBUG [org.jboss.ejb.EJBDeployer] start application, deploymentInfo: org.jboss.deployment.DeploymentInfo@9c9042ea { url=file:/C:/jboss-3.2.0_tomcat-4.1.24/server/isaac/tmp/deploy/server/isaac/deploy/opc.ear/45.opc.ear-contents/opc-ejb.jar }
              deployer: org.jboss.ejb.EJBDeployer@a4181c
              status: Starting
              state: START_DEPLOYER
              watch: file:/C:/jboss-3.2.0_tomcat-4.1.24/server/isaac/tmp/deploy/server/isaac/deploy/opc.ear/45.opc.ear-contents/opc-ejb.jar
              lastDeployed: 1054588384828
              lastModified: 1054588384187
              mbeans:
              jboss.j2ee:jndiName=local/MailCompletedOrderMDB,service=EJB state: Created
              jboss.j2ee:jndiName=local/PurchaseOrderMDB,service=EJB state: Created
              jboss.j2ee:jndiName=com.sun.j2ee.blueprints.opc.admin.ejb.OPCAdminFacadeHome,service=EJB state: Created
              jboss.j2ee:jndiName=local/OrderApprovalMDB,service=EJB state: Created
              jboss.j2ee:jndiName=local/InvoiceMDB,service=EJB state: Created
              jboss.j2ee:jndiName=local/MailOrderApprovalMDB,service=EJB state: Created
              jboss.j2ee:jndiName=local/MailInvoiceMDB,service=EJB state: Created
              , short name: opc-ejb.jar, parent short name: opc.ear
              2003-06-02 15:13:13,437 DEBUG [org.jboss.system.ServiceController] starting service jboss.j2ee:service=EjbModule,url=file%3a/C%3a/jboss-3.2.0_tomcat-4.1.24/server/isaac/tmp/deploy/server/isaac/deploy/opc.ear/45.opc.ear-contents/opc-ejb.jar
              2003-06-02 15:13:13,437 INFO [org.jboss.ejb.EjbModule] Starting
              2003-06-02 15:13:13,437 DEBUG [org.jboss.ejb.EjbModule] startService, start container: org.jboss.ejb.MessageDrivenContainer@eb535
              2003-06-02 15:13:13,437 DEBUG [org.jboss.system.ServiceController] starting service jboss.j2ee:jndiName=local/MailCompletedOrderMDB,service=EJB
              2003-06-02 15:13:13,437 INFO [org.jboss.ejb.MessageDrivenContainer] Starting
              2003-06-02 15:13:13,437 DEBUG [org.jboss.ejb.MessageDrivenContainer] Begin java:comp/env for EJB: MailCompletedOrderMDB
              2003-06-02 15:13:13,437 DEBUG [org.jboss.ejb.MessageDrivenContainer] TCL: java.net.URLClassLoader@df9095
              2003-06-02 15:13:13,437 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding env-entry: param/SendCompletedOrderMail of type: java.lang.Boolean to value:false
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding an EJBLocalReference ejb/LineItem
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding ejb/LineItem to bean source: LineItemEJB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding an EJBLocalReference ejb/ContactInfo
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding ejb/ContactInfo to bean source: ContactInfoEJB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding an EJBLocalReference ejb/CreditCard
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding ejb/CreditCard to bean source: CreditCardEJB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding an EJBLocalReference ejb/PurchaseOrder
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding ejb/PurchaseOrder to bean source: PurchaseOrderEJB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding an EJBLocalReference ejb/Address
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding ejb/Address to bean source: AddressEJB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding resource manager: java:/ConnectionFactory to JDNI ENC as: jms/QueueConnectionFactory
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] Binding env resource: queue/jms/opc/MailQueue to JDNI ENC as: jms/MailQueue
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.MessageDrivenContainer] End java:comp/env for EJB: MailCompletedOrderMDB
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.plugins.local.BaseLocalProxyFactory] MailCompletedOrderMDB cannot be Bound, doesn't have local and local home interfaces
              2003-06-02 15:13:13,453 INFO [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Starting
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Initializing
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Looking up provider adapter: java:/DefaultJMSProvider
              2003-06-02 15:13:13,453 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Provider adapter: org.jboss.jms.jndi.JBossMQProvider@3d1402
              2003-06-02 15:13:13,453 INFO [org.jboss.ejb.plugins.jms.DLQHandler] Creating
              2003-06-02 15:13:13,453 DEBUG [org.jboss.jms.jndi.JBossMQProvider] no provider url; connecting to local JNDI
              2003-06-02 15:13:13,453 DEBUG [org.jboss.jms.jndi.JBossMQProvider] created context: javax.naming.InitialContext@984f7d
              2003-06-02 15:13:13,453 ERROR [org.jboss.ejb.plugins.jms.DLQHandler] Initialization failed
              javax.jms.JMSException: Error creating the dlq connection: XAConnectionFactory not bound
              at org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:152)
              at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:158)
              at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:394)
              at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:553)
              at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
              at org.jboss.ejb.MessageDrivenContainer.startService(MessageDrivenContainer.java:220)
              at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
              at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
              at $Proxy11.start(Unknown Source)
              at org.jboss.system.ServiceController.start(ServiceController.java:392)
              at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
              at $Proxy48.start(Unknown Source)
              at org.jboss.ejb.EjbModule.startService(EjbModule.java:347)
              at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
              at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
              at $Proxy11.start(Unknown Source)
              at org.jboss.system.ServiceController.start(ServiceController.java:392)
              at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
              at $Proxy19.start(Unknown Source)
              at org.jboss.ejb.EJBDeployer.start(EJBDeployer.java:541)
              at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
              at org.jboss.deployment.MainDeployer.start(MainDeployer.java:824)
              at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640)
              at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:613)
              at sun.reflect.GeneratedMethodAccessor32.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
              at $Proxy7.deploy(Unknown Source)
              at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:280)
              at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:421)
              at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:200)
              at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:273)
              at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:192)
              at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:966)
              at $Proxy0.start(Unknown Source)
              at org.jboss.system.ServiceController.start(ServiceController.java:392)
              at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
              at $Proxy5.start(Unknown Source)
              at org.jboss.deployment.SARDeployer.start(SARDeployer.java:242)
              at org.jboss.deployment.MainDeployer.start(MainDeployer.java:832)
              at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:640)
              at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:613)
              at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:597)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              at java.lang.reflect.Method.invoke(Method.java:324)
              at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
              at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
              at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:177)
              at $Proxy6.deploy(Unknown Source)
              at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:361)
              at org.jboss.system.server.ServerImpl.start(ServerImpl.java:268)
              at org.jboss.Main.boot(Main.java:156)
              at org.jboss.Main$1.run(Main.java:394)
              at java.lang.Thread.run(Thread.java:536)