URGENT: JAWS can't judge if InterBase table already exists?
yaorong Dec 26, 2001 1:56 AMHi all,
I use InterBase6.0.1 database and Jboss2.4.3 for Window. The datasource config is as follows:
org.jboss.pool.jdbc.xa.wrapper.XADataSourceImpl
HRMSDB
jdbc:interbase://192.168.82.125/d:/webhrms/HRMS.GDB
SYSDBA
masterkey
First I start InterServer as windows2000's service and put InterClient.jar to jboss/lib/ext/. I must add an issue: the InterClient.jar I put into jboss/lib/ext is compiled at jdk1.3 .
. I encounter a problem when I start the jboss: The database bounding has no problem but the jboss hangs when [Container factory] Deploying:file:/D:/WEBHRMS/JBoss-2.4.3_Tomcat-3.2.3/jboss/tm
p/deploy/Default/hrms.ear
[Verifier] Verifying file:/D:/WEBHRMS/JBoss-2.4.3_Tomcat-3.2.3/jboss/tmp/deploy/
Default/hrms.ear/ejb1004.jar
[Container factory] Deploying Test
The Test is the CMP which can deploy if the database is changed to mssqlserver2000 or mysql4.0 for Win and there is only one entity bean. I checked the Jboss2.4.3/jboss/log/server.log and found the jaws can't judge the table already exists or not. Please refer to the follow message I copy from the server.log:
[JAWS] Initializing JAWS plugin for Test
[JAWS] Loading standardjaws.xml : file:/D:/WEBHRMS/JBoss-2.4.3_Tomcat-3.2.3/jboss/conf/tomcat/standardjaws.xml
[JAWS] jar:file:/D:/WEBHRMS/JBoss-2.4.3_Tomcat-3.2.3/jboss/tmp/deploy/Default/hrms.ear/ejb1004.jar!/META-INF/jaws.xml found. Overriding defaults
[JAWS] Init SQL: CREATE TABLE test (CODE_NAME VARCHAR(255) BINARY,DESC_NAME VARCHAR(255) BINARY)
[JAWS] Destroy SQL: DROP TABLE test
[JAWS] Exists SQL: SELECT COUNT(*) FROM test WHERE CODE_NAME=?
[JAWS] AutoGenerated finders - Home=interface com.ncsi.pa.ejb.eb.TestHome -- LocalHome=null
[JAWS] Save AutoGenerated findAll public abstract java.util.Collection com.ncsi.pa.ejb.eb.TestHome.findAll() throws java.rmi.RemoteException,javax.ejb.FinderException
[JAWS] findAll SQL: SELECT CODE_NAME FROM test
[JAWS] Create SQL: INSERT INTO test (CODE_NAME,DESC_NAME) VALUES (?,?)
[JAWS] Remove SQL: DELETE FROM test WHERE CODE_NAME=?
[JAWS] Load SQL: SELECT test.CODE_NAME,test.DESC_NAME FROM test WHERE CODE_NAME=?
[JAWS] Load SQL: SELECT test.CODE_NAME,test.DESC_NAME FROM test WHERE CODE_NAME=?
[JAWS] Store SQL: UPDATE test SET CODE_NAME=?,DESC_NAME=? WHERE CODE_NAME=? here the server hangs!
But if I shift datasource to MySSQl 4.0, everything is okey and the next statement in the server.log should be
[JAWS] Table 'test' already exists
[Container factory] Begin java:comp/env for EJB: DataSourceFinder
......
......
FYI, I can run a simple standalone java class that can connect to the same database and execute sql statement.
Why? I prefer to use the
container managed. Is InterBase CMP executable on Jboss2.4.3? I have struggled with this problem for several days! You are so appreciated!