Subject UNICODE_FSS in JBoss
Author Joachim Van der Auwera
I am using JBoss 4.0.1 and have problems getting a unicode connection.

When I use the following descriptor

<connection-factories>
<tx-connection-factory>

<jndi-name>blablaDS</jndi-name>
<xa-transaction/>
<track-connection-by-tx/>
<rar-name>10firebirdsql.rar</rar-name>
<connection-definition>javax.sql.DataSource</connection-definition>
<adapter-display-name>Firebird Connector</adapter-display-name>
<config-property name="database"
type="java.lang.String">localhost/3050:/data/blabla.fdb</config-property>
<config-property name="maxStatements">10</config-property>
<config-property name="lc_ctype"
type="java.lang.String">UNICODE_FSS</config-property>
<config-property name="encoding"
type="java.lang.String">UNICODE_FSS</config-property>
<user-name>sysdba</user-name>
<password>masterkey</password>

<min-pool-size>0</min-pool-size>
<check-valid-connection-sql>SELECT CAST(1 as INTEGER) FROM
rdb$database</check-valid-connection-sql>

<metadata>
<type-mapping>Firebird</type-mapping>
</metadata>
</tx-connection-factory>
</connection-factories>


I get an error saying :


2005-01-18 17:47:52,071 ERROR
[org.jboss.resource.connectionmanager.ConnectionFactoryBindingService]
Starting failed jboss.jca:service=ConnectionFactoryBinding,name=blablaDS
java.lang.NullPointerException
at
org.firebirdsql.jgds.ParameterBufferBase$StringArgument.hashCode(ParameterBufferBase.java:249)
at java.util.AbstractList.hashCode(AbstractList.java:630)
at
org.firebirdsql.jgds.ParameterBufferBase.hashCode(ParameterBufferBase.java:155)
at
org.firebirdsql.jca.FBConnectionRequestInfo.hashCode(FBConnectionRequestInfo.java:143)
at
org.firebirdsql.jca.FBManagedConnectionFactory.hashCode(FBManagedConnectionFactory.java:308)
at java.util.HashMap.hash(HashMap.java:264)
at java.util.WeakHashMap.put(WeakHashMap.java:393)
at
org.firebirdsql.jca.FBManagedConnectionFactory.start(FBManagedConnectionFactory.java:810)
at
org.firebirdsql.jca.FBManagedConnectionFactory.createConnectionFactory(FBManagedConnectionFactory.java:344)
at
org.jboss.resource.connectionmanager.ConnectionFactoryBindingService.createConnectionFactory(ConnectionFactoryBindingService.java:182)
at
org.jboss.resource.connectionmanager.ConnectionFactoryBindingService.startService(ConnectionFactoryBindingService.java:71)
at
org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:272)
at
org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:222)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:144)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
at
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
at
org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:416)
at org.jboss.system.ServiceController.start(ServiceController.java:438)
at org.jboss.system.ServiceController.start(ServiceController.java:438)
at org.jboss.system.ServiceController.start(ServiceController.java:438)
at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:144)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
......


Changing the "encodign" to "Encoding" doesn't help. Removing the
encoding config property makes sure everything deploys fine, but I get
transliteration errors.

This is using JBoss 4.0.1, Firebird 1.5.2 and Jaybird 1.5.5 (basically
latest release for all).

Anybody have any clues what I am doing wrong?

THanks for the help,
Joachim