datasource config problem when using 2nd node in cluster
tom.baeyens Feb 26, 2004 9:33 AMHi,
Continuing in the spirit of one of the previous posts : great job guys ! good docs too :-)
Setup : I have one stateless session bean that uses hibernate to talk to the database. I want to try my app in the simplest possible cluster.
So I took 2 nodes in the default partition cluster. In node A I configure my database like this in a file called "jbpm-db-service.xml" :
<?xml version="1.0" encoding="UTF-8"?> <server> <mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=JbpmDatabase"> <attribute name="Port">1701</attribute> <attribute name="Silent">true</attribute> <attribute name="Database">jbpm</attribute> <attribute name="Trace">false</attribute> <attribute name="No_system_exit">true</attribute> </mbean> </server>
Also in node A, I configure a datasource that uses the database in a file called "jbpm-ds.xml" like this :
<?xml version="1.0" encoding="UTF-8"?> <datasources> <local-tx-datasource> <jndi-name>JbpmDS</jndi-name> <!-- look it up with "java:/JbpmDs" --> <connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url> <driver-class>org.hsqldb.jdbcDriver</driver-class> <user-name>sa</user-name> <password></password> <min-pool-size>1</min-pool-size> <max-pool-size>5</max-pool-size> <idle-timeout-minutes>0</idle-timeout-minutes> <track-statements>true</track-statements> <depends>jboss:service=JbpmDatabase</depends> </local-tx-datasource> </datasources>
When I run the application client test against node A, all works fine.
Now in the node B, I configured a datasource to the database in node A like this :
<datasources> <local-tx-datasource> <jndi-name>JbpmDS</jndi-name> <!-- look it up with "java:/JbpmDs" --> <connection-url>jdbc:hsqldb:hsql://machineA:1701</connection-url> <driver-class>org.hsqldb.jdbcDriver</driver-class> <user-name>sa</user-name> <password></password> <min-pool-size>1</min-pool-size> <max-pool-size>5</max-pool-size> <idle-timeout-minutes>0</idle-timeout-minutes> <track-statements>true</track-statements> </local-tx-datasource> </datasources>
When I start the hsqldb DatabaseManager on node B and provide the url to node A, the DatabaseManager shows the contents of the db in node A as expected.
When starting node B and running the tests again, a stacktrace in node B tells me that my app couldn't get a connection from the datasource because it couldn't connect.
Any ideas what I could have messed up. Or which docs I should buy :-)
Regards, Tom.