Hi,
thanks for your answer. I have got the source and compiled it:
my system:
SuSE-Linux 7.0, kernel 2.2.16. IBM java 1.3.0, Ant version 1.2 compiled
on October 24 2000
With ant I'got the following error:
------------------------
dev/firebird> ant
Searching for build.xml ...
Buildfile: /home/ohst/interclient/20/dev/firebird/build.xml
setup.java:
BUILD FAILED
/home/ohst/interclient/20/dev/firebird/build.xml:21: Directory
/home/build/interclient/dev/classes creation was not succesful for an
unknown reason
Total time: 1 second
------------------------
But it worked with make in the packages and interbase directory after
some small
corrections in XAResource.java, interbase/Makefile and event_msgs.h
because of a compile errors:
in XAResource.java
used:
------------------------
...
synchronized public void setTransactionTimeout(int seconds) throws
javax.transaction.xa.XAException {
return ; //not yet supported
}
...
------------------------
instead of:
------------------------
...
synchronized public boolean setTransactionTimeout(int seconds) throws
javax.transaction.xa.XAException {
return false; //not yet supported
}
...
------------------------
in event_msgs.h problem with C macros spanning multple lines ?!? I don't
know why, have had up to now never such a problem.
renamed CDR.[ch] to cdr.[ch] in all files.
After that it worked. Thanks.
But I ran into an other problem. The character set of the table is
unicode_fss (we have to use unicode) and jboss.jcml looks as follows:
------------------------
...
<mbean name="DefaultDomain:service=XADataSource,name=InterBaseDB">
<attribute name="TimestampUsed">true</attribute>
<attribute name="Password">masterkey</attribute>
<attribute name="MaxSize">0</attribute>
<attribute name="InvalidateOnError">false</attribute>
<attribute name="IdleTimeout">1800000</attribute>
<attribute name="GCInterval">120000</attribute>
<attribute name="Blocking">true</attribute>
<attribute name="LoggingEnabled">true</attribute>
<attribute name="IdleTimeoutEnabled">false</attribute>
<attribute name="GCEnabled">false</attribute>
<attribute
name="URL">jdbc:interbase://localhost/var/ibase/db/address.gdb</attribute>
<attribute
name="Properties">CharSet=interbase.interclient.CharacterEncodings.UTF8</attribute>
<attribute name="MinSize">0</attribute>
<attribute name="MaxIdleTimeoutPercent">1.0</attribute>
<attribute name="JDBCUser">sysdba</attribute>
<attribute name="GCMinIdleTime">1200000</attribute>
</mbean>
...
------------------------
After some inserts I got this exception, do you have an idea?
Using this character-set (table and datasource) in a simple java-client
works fine.
------------------------
...
[InterBaseDB] Resource 'org.jboss.minerva.xa.XAResourceImpl@375a9d8'
enlisted for 'org.jboss.minerva.xa.XAConnectionImpl@374e9d8'.
[InterBaseDB] Pool InterBaseDB [1/1/Unlimited] gave out pooled object:
org.jboss.minerva.xa.XAConnectionImpl@374e9d8
[CDCollectionBean] Added CD with id=11, title=Blade Runner/Vangelis,
artist=New American Orchestra, type=soundtrack, notes=Orchestral version
of real soundtrack
[InterBaseDB] Pool InterBaseDB [0/1/Unlimited] returned object
org.jboss.minerva.xa.XAConnectionImpl@374e9d8 to the pool.
[InterBaseDB] Resource 'org.jboss.minerva.xa.XAResourceImpl@375a9d8'
enlisted for 'org.jboss.minerva.xa.XAConnectionImpl@374e9d8'.
[InterBaseDB] Pool InterBaseDB [1/1/Unlimited] gave out pooled object:
org.jboss.minerva.xa.XAConnectionImpl@374e9d8
[CDCollectionBean] Added CD with id=12, title=Signs of Life/Jeffes,
Simon, artist=Penguin Café Orchestra, type=orchestral, notes=
[JAWS] interbase.interclient.SQLException: [interclient][interbase]
arithmetic exception, numeric overflow, or string truncation
[JAWS] Cannot transliterate character between character sets
[JAWS]
[JAWS] at java.lang.Throwable.<init>(Throwable.java:96)
[JAWS] at java.lang.Exception.<init>(Exception.java:44)
[JAWS] at java.sql.SQLException.<init>(SQLException.java:45)
[JAWS] at
interbase.interclient.SQLException.<init>(SQLException.java:96)
[JAWS] at
interbase.interclient.RecvMessage.createSQLException(RecvMessage.java:694)
[JAWS] at
interbase.interclient.RecvMessage.makeSQLException(RecvMessage.java:593)
[JAWS] at
interbase.interclient.RecvMessage.get_EXCEPTIONS(RecvMessage.java:554)
[JAWS] at
interbase.interclient.PreparedStatement.remote_EXECUTE_PREPARED_UPDATE_STATEMENT(PreparedStatement.java:358)
[JAWS] at
interbase.interclient.PreparedStatement.executeUpdate(PreparedStatement.java:338)
[JAWS] at
org.jboss.minerva.jdbc.PreparedStatementInPool.executeUpdate(PreparedStatementInPool.java:81)
[JAWS] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCUpdateCommand.executeStatementAndHandleResult(JDBCUpdateCommand.java:49)
[JAWS] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCCommand.java:158)
[JAWS] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.execute(JDBCStoreEntityCommand.java:97)
[JAWS] at
org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.storeEntity(JAWSPersistenceManager.java:156)
[JAWS] at
org.jboss.ejb.plugins.CMPPersistenceManager.storeEntity(CMPPersistenceManager.java:337)
[JAWS] at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java:343)
[JAWS] at
org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.java:1104)
[JAWS] at org.jboss.tm.TxCapsule.commit(TxCapsule.java:278)
[JAWS] at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:76)
[JAWS] at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:318)
[JAWS] at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
[JAWS] at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:144)
[JAWS] at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
[JAWS] at
org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:271)
[JAWS] at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:163)
[JAWS] at java.lang.reflect.Method.invoke(Native Method)
[JAWS] at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:242)
[JAWS] at sun.rmi.transport.Transport$1.run(Transport.java:155)
[JAWS] at java.security.AccessController.doPrivileged(Native Method)
[JAWS] at sun.rmi.transport.Transport.serviceCall(Transport.java:152)
[JAWS] at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:462)
[JAWS] at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:662)
[JAWS] at java.lang.Thread.run(Thread.java:498)
[CDCollectionBean] java.rmi.ServerException: Store failed; nested
exception is:
[CDCollectionBean] interbase.interclient.SQLException:
[interclient][interbase] arithmetic exception, numeric overflow, or
string truncation
[CDCollectionBean] Cannot transliterate character between character sets
[CDCollectionBean]
[CDCollectionBean] interbase.interclient.SQLException:
[interclient][interbase] arithmetic exception, numeric overflow, or
string truncation
[CDCollectionBean] Cannot transliterate character between character sets
[CDCollectionBean]
[CDCollectionBean] at java.lang.Throwable.<init>(Throwable.java:96)
[CDCollectionBean] at java.lang.Exception.<init>(Exception.java:44)
[CDCollectionBean] at
java.sql.SQLException.<init>(SQLException.java:45)
[CDCollectionBean] at
interbase.interclient.SQLException.<init>(SQLException.java:96)
[CDCollectionBean] at
interbase.interclient.RecvMessage.createSQLException(RecvMessage.java:694)
[CDCollectionBean] at
interbase.interclient.RecvMessage.makeSQLException(RecvMessage.java:593)
[CDCollectionBean] at
interbase.interclient.RecvMessage.get_EXCEPTIONS(RecvMessage.java:554)
[CDCollectionBean] at
interbase.interclient.PreparedStatement.remote_EXECUTE_PREPARED_UPDATE_STATEMENT(PreparedStatement.java:358)
[CDCollectionBean] at
interbase.interclient.PreparedStatement.executeUpdate(PreparedStatement.java:338)
[CDCollectionBean] at
org.jboss.minerva.jdbc.PreparedStatementInPool.executeUpdate(PreparedStatementInPool.java:81)
[CDCollectionBean] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCUpdateCommand.executeStatementAndHandleResult(JDBCUpdateCommand.java:49)
[CDCollectionBean] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCCommand.java:158)
[CDCollectionBean] at
org.jboss.ejb.plugins.jaws.jdbc.JDBCStoreEntityCommand.execute(JDBCStoreEntityCommand.java:97)
[CDCollectionBean] at
org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.storeEntity(JAWSPersistenceManager.java:156)
[CDCollectionBean] at
org.jboss.ejb.plugins.CMPPersistenceManager.storeEntity(CMPPersistenceManager.java:337)
[CDCollectionBean] at
org.jboss.ejb.plugins.EntitySynchronizationInterceptor$InstanceSynchronization.beforeCompletion(EntitySynchronizationInterceptor.java:343)
[CDCollectionBean] at
org.jboss.tm.TxCapsule.doBeforeCompletion(TxCapsule.java:1104)
[CDCollectionBean] at
org.jboss.tm.TxCapsule.commit(TxCapsule.java:278)
[CDCollectionBean] at
org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:76)
[CDCollectionBean] at
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:318)
[CDCollectionBean] at
org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:99)
[CDCollectionBean] at
org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:144)
[CDCollectionBean] at
org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
[CDCollectionBean] at
org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:271)
[CDCollectionBean] at
org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke(JRMPContainerInvoker.java:163)
[CDCollectionBean] at java.lang.reflect.Method.invoke(Native
Method)
[CDCollectionBean] at
sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:242)
[CDCollectionBean] at
sun.rmi.transport.Transport$1.run(Transport.java:155)
[CDCollectionBean] at
java.security.AccessController.doPrivileged(Native Method)
[CDCollectionBean] at
sun.rmi.transport.Transport.serviceCall(Transport.java:152)
[CDCollectionBean] at
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:462)
[CDCollectionBean] at
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:662)
[CDCollectionBean] at java.lang.Thread.run(Thread.java:498)
[JAWS] interbase.interclient.SQLException: [interclient][interbase]
arithmetic exception, numeric overflow, or string truncation
...
------------------------
Regards,
Dirk Ohst.
David Jencks wrote:
>
> Hi,
>
> I never had this problem, but I notice that you are expecting JAWS to
> create your tables. The interclient driver from borland won't do this,
> there are problems with the databaseMetData.getTables call. Possibly this
> is causing the problem you have-- in my experience it killed interserver
> immediately. You may have snipped the part of the trace indicating if this
> is your problem.
>
> If you are on Linux, especially rh 7, you could try the latest firebird
> interclient 20, in which I have fixed these problems. You have to compile
> it yourself at this point, but there is a ant script for this in the
> interclient...../firebird directory.
>
> If you are on windows, I would certainly appreciate you trying to compile
> this from source and seeing if it works. I don't have a windows compiler,
> and I've been waiting for someone to test this out on windows before
> publicizing it too much.
>
> Thanks
>
> David Jencks
> firebird is at sourceforge.net/projects/firebird
--
--------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
List Help?: [EMAIL PROTECTED]