此问题已回答。
Hi
I just starting to use JBoss5 with HSQLDB2.0.1 rc 3. Just installed and configured JBoss and HSQLDB, without any deployment of application.
This is what I get in the log of server startup:
16:49:17,405 ERROR [AbstractKernelController] Error installing to Start: name=jboss.ejb:persistencePolicy=database,service=EJBTimerService state=Create mode=Manual requiredState=Installed
java.sql.SQLException: length must be specified in type definition: VARBINARY
at org.hsqldb.jdbc.Util.sqlException(Util.java:215)
at org.hsqldb.jdbc.JDBCStatement.fetchResult(JDBCStatement.java:1826)
at org.hsqldb.jdbc.JDBCStatement.executeUpdate(JDBCStatement.java:207)
at org.jboss.resource.adapter.jdbc.WrappedStatement.executeUpdate(WrappedStatement.java:249)
at org.jboss.ejb.txtimer.GeneralPurposeDatabasePersistencePlugin.createTableIfNotExists(GeneralPurposeDatabasePersistencePlugin.java:175)
at org.jboss.ejb.txtimer.DatabasePersistencePolicy.startService(DatabasePersistencePolicy.java:104)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:376)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:322)
at sun.reflect.GeneratedMethodAccessor107.invoke(Unknown Source)
...
and then:
DEPLOYMENTS MISSING DEPENDENCIES:
Deployment "jboss.ejb:service=EJBTimerService" is missing the following dependencies: Dependency "jboss.ejb:persistencePolicy=database,service=EJBTimerService" (should be in state "Create", but is actually in state "**ERROR**") DEPLOYMENTS IN ERROR: Deployment "jboss.ejb:persistencePolicy=database,service=EJBTimerService" is in error due to the following reason(s): org.hsqldb.HsqlException: length must be specified in type definition: VARBINARY, **ERROR**
Any help would be really appreciated
Can you try this:
- Open the JBOSS_HOME/server/< servername>/conf/standardjbosscmp-jdbc.xml in a text editor
- Search for the "Hypersonic SQL" type-mappping in that file. It will look something like this:
Hypersonic SQL ... ... java.lang.Object VARBINARY VARBINARY
Try changing it to:
Hypersonic SQL ... ... java.lang.Object VARBINARY VARBINARY(1024)
See the change in the sql-type value. I set the length randomly to 1024.
After this change, restart the server and see if it works.