activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Johan Hallgren" <jhallg...@apiworldwide.com>
Subject Adding support for MaxDB in ActiveMQ JDBC persistence layer
Date Fri, 24 Mar 2006 03:38:56 GMT
Hi list,

I am currently in the process of evaluating ActiveMQ. Reading http://activemq.org/JDBC+Support
I see that it supports quite a lot of databases, but unfortunately not the one that my company
is using (MaxDB (formerly SAPDB), http://www.mysql.com/products/maxdb/). I try to configure
activemq to use it by copying its JDBC jar file to activemq's lib directory, and configuring
activemq.xml to use it like this:

  <bean id="maxdb-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName" value="com.sap.dbtech.jdbc.DriverSapDB"/>
    <property name="url" value="jdbc:sapdb://localhost/DatabaseInstanceName"/>
    <property name="username" value="activemquser"/>
    <property name="password" value="activemquser"/>
  </bean>

I used the MySQL sample config section as a template and substituted values for my MaxDB instance
(the class value I used as is, since I didn't know what to use there). However, when starting
ActiveMQ, I get these errors (I have created the database user mentioned above, but not created
any tables in that schema):

ACTIVEMQ_HOME: /usr/local/activemq-4.0-M4
Loading message broker from: xbean:activemq.xml
INFO  BrokerService                  - ActiveMQ 4.0-M4 JMS Message Broker (localhost) is starting
INFO  BrokerService                  - For help or more information please see:http://www.logicblaze.com
WARN  JDBCPersistenceAdapter         - Database driver NOT recognized: [sap_db].  Will use
default JDBC implementation.
WARN  DefaultJDBCAdapter             - Could not create JDBC tables; they couldalready exist.
Failure was: CREATE TABLE ACTIVEMQ_MSGS(ID INTEGER NOT NULL, CONTAINER VARCHAR(250), MSGID_PROD
VARCHAR(250), MSGID_SEQ INTEGER, EXPIRATION BIGINT, MSG BLOB, PRIMARY KEY ( ID ) ) Message:
[-4006] (at 128): Unknown domain name:BIGINT SQLState: I4006 Vendor code: -4006

...Further similar errors snipped.

>From my understanding of what is happening, it seems that the SQL statements that are
used by ActiveMQ won't work on MaxDB (BIGINT is indeed a field type that is not recognized
by that database). My questions are thus:

* Does anyone successfully use ActiveMQ with MaxDB, and if so, how should I configure activemq.xml
to make it work?
* If it does indeed not work, what would it take to add support for MaxDB to ActiveMQ? The
ActiveMQ web site further mentions that "If you have a JDBC database which we don't support
then please let us know what JDBC driver string you're getting." If someone would tell me
how, I'd be happy to provide the JDBC string I'm getting (could it be "sap_db", as seen in
the output snippet above?), and help in any other way I can to add support for this database.

Thanks in advance for any insight!

Regards,
Johan Hallgren

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message