1 Reply Latest reply on Mar 28, 2005 6:11 AM by Sriram Padmanabhan

    JDBC:ODBC driver for jboss-hypersonic required please help

    shanker Newbie

      I am trying to execute servlet in jboss. I want to use hypersonic database.
      where i can find jdbc:odbc driver for hypersonic.

      I have coded in the following way.

      Class.forName("sun.jdbc.odbc.JdbcodbcDriver");
      connection = DriverManager.getConnection(URL,"","");

      Please help me. Please tell me if i can execute without a jdbc:odbc driver. Please give me sample code.Thanks a lot in advance.

        • 1. Re: JDBC:ODBC driver for jboss-hypersonic required please he
          Sriram Padmanabhan Newbie

          HI
          Instead of this use the JNDI Data source Configuration.

          <?xml version="1.0" encoding="UTF-8"?>

          <!-- The Hypersonic embedded database JCA connection factory config
          $Id: hsqldb-ds.xml,v 1.1.2.13 2004/04/19 12:47:36 ejort Exp $ -->



          <local-tx-datasource>

          <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
          <!-- Datasources are not available outside the virtual machine -->
          <jndi-name>DefaultDS</jndi-name>

          <!-- for tcp connection, allowing other processes to use the hsqldb
          database. This requires the org.jboss.jdbc.HypersonicDatabase mbean.
          -->
          <connection-url>jdbc:hsqldb:hsql://localhost:1701</connection-url>

          <!-- for totally in-memory db, not saved when jboss stops.
          The org.jboss.jdbc.HypersonicDatabase mbean necessary
          <connection-url>jdbc:hsqldb:.</connection-url>
          -->
          <!-- for in-process persistent db, saved when jboss stops. The
          org.jboss.jdbc.HypersonicDatabase mbean is necessary for properly db shutdown
          -->
          <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}localDB</connection-url>

          <!-- The driver class -->
          <driver-class>org.hsqldb.jdbcDriver</driver-class>

          <!-- The login and password -->
          <user-name>sa</user-name>


          <!--example of how to specify class that determines if exception means connection should be destroyed-->
          <!--exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyExceptionSorter</exception-sorter-class-name-->

          <!-- this will be run before a managed connection is removed from the pool for use by a client-->
          <!--<check-valid-connection-sql>select * from something</check-valid-connection-sql> -->

          <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
          <min-pool-size>5</min-pool-size>

          <!-- The maximum connections in a pool/sub-pool -->
          <max-pool-size>20</max-pool-size>

          <!-- The time before an unused connection is destroyed -->
          <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use -->
          <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
          <idle-timeout-minutes>0</idle-timeout-minutes>

          <!-- sql to call when connection is created
          <new-connection-sql>some arbitrary sql</new-connection-sql>
          -->

          <!-- sql to call on an existing pooled connection when it is obtained from pool
          <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
          -->

          <!-- example of how to specify a class that determines a connection is valid before it is handed out from the pool
          <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.DummyValidConnectionChecker</valid-connection-checker-class-name>
          -->

          <!-- Whether to check all statements are closed when the connection is returned to the pool,
          this is a debugging feature that should be turned off in production -->
          <track-statements/>

          <!-- Use the getConnection(user, pw) for logins
          <application-managed-security/>
          -->

          <!-- Use the security domain defined in conf/login-config.xml -->
          <security-domain>HsqlDbRealm</security-domain>

          <!-- Use the security domain defined in conf/login-config.xml or the
          getConnection(user, pw) for logins. The security domain takes precedence.
          <security-domain-and-application>HsqlDbRealm</security-domain-and-application>
          -->

          <!-- This mbean can be used when using in process persistent hypersonic -->
          jboss:service=Hypersonic,database=localDB
          </local-tx-datasource>

          <!-- This mbean should be used only when using tcp connections. Uncomment
          when the tcp based connection-url is used. -->

          1701
          true
          default
          false
          true



          <!-- This mbean can be used when using in process persistent db -->

          localDB
          true



          Save this in file hsqldb-ds.xml and put in the deploy directory.

          Alternatively

          The Driver you are looking for is org.hsqldb.jdbcDriver
          URL is given in the <connection-url> tag. Alternatively you can refer the Beginers guide for JBOSS from the site

          Regards
          Sriram