Version 5
    <?xml version="1.0" encoding="UTF-8"?>
    
      <!-- ==================================================================== -->
      <!-- New ConnectionManager setup for firebird dbs using jca-jdbc xa driver-->
      <!-- Build jmx-api (build/build.sh all) and view for config documentation -->
      <!-- ==================================================================== -->
    
    <connection-factories>
    
      <!--FBManager can be used to create and drop databases.  
        Drop is especially useful during testing, since it 
        assures a clean start next time. -->
      <mbean code="org.firebirdsql.management.FBManager" name="jboss.jca:service=FirebirdManager">
        <attribute name="FileName">/Users/david/jboss/head/jboss-head/build/output/jboss-4.0.0alpha/server/default/data/fbtest.gdb</attribute>
        <attribute name="UserName">sysdba</attribute>
        <attribute name="Password">masterkey</attribute>
        <attribute name="CreateOnStart">true</attribute>
        <attribute name="DropOnStop">false</attribute>
      </mbean>
    
      <tx-connection-factory>
    
        <jndi-name>FIrebirdDS</jndi-name>
    
        <xa-transaction></xa-transaction>
    
        <rar-name>firebirdsql.rar</rar-name>
        <connection-definition>javax.sql.DataSource</connection-definition>
    
        <config-property name="Database" type="java.lang.String">localhost/3050:/Users/david/jboss/head/jboss-head/build/output/jboss-4.0.0alpha/server/default/data/fbtest.gdb</config-property>
    
        <user-name>sysdba</user-name>
    
        <password>masterkey</password>
    
        <!--additional properties. only use one way of setting tx isolation, please
        <config-property name="TransactionIsolation"></config-property>
        <config-property name="TransactionIsolationName">TRANSACTION_READ_COMMITTED</config-property>
        <config-property name="BlobBufferLength"></config-property>
        <config-property name="Encoding">UNICODE_FSS</config-property>
        -->
    
        <min-pool-size>0</min-pool-size>
            <!-- 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>
            -->
    
          <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
          <metadata>
             <type-mapping>Firebird</type-mapping>
          </metadata>
      </tx-connection-factory>
    
    </connection-factories>
    

     

    -


     

    For JBoss 4/EJB3 and Firebird 2/Jaybird 2 the standard firebird-ds.xml will not work.

    Instead use the following:

     

    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
    
      <local-tx-datasource>
        <jndi-name>TitanDS</jndi-name>
        <connection-url>jdbc:firebirdsql:localhost/3050:titan</connection-url>
        <driver-class>org.firebirdsql.jdbc.FBDriver</driver-class>
        <user-name>SYSDBA</user-name>
        <password>masterkey</password>    
        <min-pool-size>5</min-pool-size>
        <max-pool-size>20</max-pool-size>    
          <track-statements></track-statements>
          <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
          <metadata>
             <type-mapping>Firebird</type-mapping>
          </metadata>
    
        </local-tx-datasource>
    </datasources>