6 Replies Latest reply on May 9, 2003 3:22 PM by newbieonjboss

    how to configure JMS to use jdbc2.PersistenceManager

    newbieonjboss Newbie

      How do i configure JMS to use jdbc2 PersistenceManager with oracle 8i?

      This is what i've got so far.
      1. removed hsqldb-service.xml from server\default\deploy
      2. copy oracle-service.xml to server\default\deploy
      3. edit oracle-service.xml and modify JDBC URl to reflect
      my oracle server/port#/SID and as well as login id

      -- oracle-service.xml modification

      <config-property name="DriverClass" type="java.lang.String">oracle.jdbc.driver.OracleDriver</config-property>
      <config-property name="ConnectionURL" type="java.lang.String">jdbc:oracle:thin:@127.0.0.1:1521:ORCL</config-property>
      <config-property name="ORCL_USER_01" type="java.lang.String" />
      <config-property name="ORCL_USER_01_PASSWORD" type="java.lang.String" />


      -- here's the
      <depends optional-attribute-name="ManagedConnectionPool">

      1
      30
      5000
      15
      ByApplication


      4. Edit file jbossmq-service.xml and commented out the File base persistencemanager
      5. Uncomment and enable the org.jboss.mq.pm.jdbc2.PersistenceManager, points its
      DataSource service to use oracleDS instead of hsqldbDS
      6. Tweak the SqlProperties to match Oracle.


      <depends optional-attribute-name="MessageCache">jboss.mq:service=MessageCache
      <depends optional-attribute-name="DataSource">jboss.jca:service=LocalTxDS,name=oracleDS
      jboss.jca:service=LocalTxCM,name=oracleDS

      BLOB_TYPE=BLOB
      INSERT_TX = INSERT INTO JMS_TRANSACTIONS (TXID) values(?)
      INSERT_MESSAGE = INSERT INTO JMS_MESSAGES (MESSAGEID, DESTINATION, MESSAGEBLOB, TXID, TXOP) VALUES(?,?,?,?,?)
      SELECT_ALL_UNCOMMITED_TXS = SELECT TXID FROM JMS_TRANSACTIONS
      SELECT_MAX_TX = SELECT MAX(TXID) FROM JMS_MESSAGES
      SELECT_MESSAGES_IN_DEST = SELECT MESSAGEID, MESSAGEBLOB FROM JMS_MESSAGES WHERE DESTINATION=?
      SELECT_MESSAGE = SELECT MESSAGEID, MESSAGEBLOB FROM JMS_MESSAGES WHERE MESSAGEID=? AND DESTINATION=?
      MARK_MESSAGE = UPDATE JMS_MESSAGES SET TXID=?, TXOP=? WHERE MESSAGEID=? AND DESTINATION=?
      DELETE_ALL_MESSAGE_WITH_TX = DELETE FROM JMS_MESSAGES WHERE TXID=?
      DELETE_TX = DELETE FROM JMS_TRANSACTIONS WHERE TXID = ?
      DELETE_MARKED_MESSAGES = DELETE FROM JMS_MESSAGES WHERE TXID=? AND TXOP=?
      DELETE_MESSAGE = DELETE FROM JMS_MESSAGES WHERE MESSAGEID=? AND DESTINATION=?
      CREATE_MESSAGE_TABLE = CREATE TABLE JMS_MESSAGES ( MESSAGEID INTEGER NOT NULL, \
      DESTINATION VARCHAR(50) NOT NULL, TXID INTEGER, TXOP CHAR(1), \
      MESSAGEBLOB BLOB, PRIMARY KEY (MESSAGEID, DESTINATION) )
      CREATE_TX_TABLE = CREATE TABLE JMS_TRANSACTIONS ( TXID INTEGER )



      7. Startup JBOSS.
      8. I am seeing that oracle-service.xml deployed correctly

      09:27:41,001 INFO [MainDeployer] Starting deployment of package: file:/D:/HAWKING_VSS/MakaluJ/Insta
      ll/AppSvr/jboss-3.0.6/server/default/deploy/oracle-service.xml
      09:27:41,110 INFO [JBossManagedConnectionPool] Creating
      09:27:41,126 INFO [JBossManagedConnectionPool] Created
      09:27:41,126 INFO [JBossManagedConnectionPool] Starting
      09:27:41,142 INFO [JBossManagedConnectionPool] Started
      09:27:41,142 INFO [MainDeployer] Deployed package: file:/D:/HAWKING_VSS/MakaluJ/Install/AppSvr/jbos
      s-3.0.6/server/default/deploy/oracle-service.xml

      9. But I am seeing error and it looks like the JMS Queue is not finishing initialization?

      s-3.0.6/server/default/deploy/jmx-console.war/
      09:27:51,016 ERROR [URLDeploymentScanner] MBeanException: Exception in MBean operation 'checkIncompl
      eteDeployments()'
      Cause: Incomplete Deployment listing:
      Packages waiting for a deployer:

      Incompletely deployed packages:

      MBeans waiting for classes:

      MBeans waiting for other MBeans:
      [ObjectName: jboss.mq.destination:service=Queue,name=testQueue
      state: CONFIGURED
      I Depend On: jboss.mq:service=DestinationManager

      Depends On Me: , ObjectName: jboss.mq:service=InvocationLayer,type=JVM
      state: CONFIGURED
      I Depend On: jboss.mq:service=Invoker

      Depends On Me: , ObjectName: jboss.mq:service=InvocationLayer,type=RMI
      state: CONFIGURED
      I Depend On: jboss.mq:service=Invoker

      Depends On Me: , ObjectName: jboss.mq:service=InvocationLayer,type=OIL
      state: CONFIGURED
      I Depend On: jboss.mq:service=Invoker

      Depends On Me: , ObjectName: jboss.mq:service=InvocationLayer,type=UIL
      state: CONFIGURED
      I Depend On: jboss.mq:service=Invoker

      Depends On Me: , ObjectName: jboss.mq:service=Invoker
      state: CONFIGURED
      I Depend On: jboss.mq:service=TracingInterceptor

      Depends On Me: jboss.mq:service=InvocationLayer,type=JVM
      jboss.mq:service=InvocationLayer,type=RMI
      jboss.mq:service=InvocationLayer,type=OIL
      jboss.mq:service=InvocationLayer,type=UIL
      , ObjectName: jboss.mq:service=TracingInterceptor
      state: CONFIGURED
      I Depend On: jboss.mq:service=SecurityManager

      Depends On Me: jboss.mq:service=Invoker
      , ObjectName: jboss.mq:service=SecurityManager
      state: CONFIGURED
      I Depend On: jboss.mq:service=DestinationManager

      Depends On Me: jboss.mq:service=TracingInterceptor
      , ObjectName: jboss.mq:service=DestinationManager
      state: CONFIGURED
      I Depend On: jboss.mq:service=PersistenceManager
      jboss.mq:service=StateManager

      Depends On Me: jboss.mq.destination:service=Queue,name=testQueue
      jboss.mq:service=SecurityManager
      , ObjectName: jboss.mq:service=PersistenceManager
      state: CONFIGURED
      I Depend On: jboss.mq:service=MessageCache
      jboss.jca:service=LocalTxDS,name=oracleDS
      jboss.jca:service=LocalTxCM,name=oracleDS

      Depends On Me: jboss.mq:service=DestinationManager
      ]