2 Replies Latest reply on Jul 28, 2006 2:17 PM by paro

    Exception when storing Object that contains a set of other o

    Michael Migal Newbie

      I am using JBoss 4.0.4.
      I have 2 objects:

      public class StorageArray {
       // properties
       private String m_UID = null;
       private long m_wwn=-1;
       private Set m_nodes=Collections.synchronizedSet(new HashSet());
      
       public StorageArray() {}
      
       // setters
       public void setUID(String UID) {
       m_UID = UID;
       }
       public void setWWN(long wwn) {
       m_wwn=wwn;
       }
       public void setNodes(Set nodes) {
       m_nodes=nodes;
       }
      
       // getters
       public String getUID() {
       return m_UID;
       }
       public long getWWN() {
       return m_wwn;
       }
       public Set getNodes() {
       return m_nodes;
       }
      }
      
      public class ControllerNode {
       private String m_UID = null;
       private short m_position=-1;
       private boolean m_master=false;
      
       // constructors
       public ControllerNode() {}
      
       public ControllerNode(String UID, String parentUID) {
       super(UID, parentUID);
       }
      
       // setters
       public void setUID(String UID) {
       m_UID = UID;
       }
       public void setPosition(Short position) {
       if(position!=null)
       m_position=position.shortValue();
       }
       public void setMaster(Boolean master) {
       if(master!=null)
       m_master=master.booleanValue();
       }
      
       // getters
       public String getUID() {
       return m_UID;
       }
       public short getPosition() {
       return m_position;
       }
       public boolean getMaster() {
       return m_master;
       }
      }
      

      I declared 2 hbm.xml files, for each of the classes:
      <hibernate-mapping>
       <class name="com.test.inform.data.array.StorageArray" table="tbl_StorageArray">
       <id name="UID" type="string" column="M_ARRAY_UID">
       <generator class="assigned"/>
       </id>
       <property name="WWN" type="long" column="M_WWN"/>
      
       <set name="nodes" table="tbl_StorageArrayControllerNode">
       <key column="M_ARRAY_UID"/>
       <many-to-many column="M_NODE_UID" unique="true" class="com.test.inform.data.node.ControllerNode"/>
       </set>
      
       </class>
      </hibernate-mapping>
      
      <hibernate-mapping>
       <class name="com.test.inform.data.node.ControllerNode" table="tbl_ControllerNode">
       <id name="UID" type="string" column="M_NODE_UID">
       <generator class="assigned"/>
       </id>
       <property name="position" type="short" column="M_POSITION"/>
       <property name="master" type="boolean" column="M_MASTER"/>
       </class>
      </hibernate-mapping>
      


      When I start the JBoss, everything loads fine and I can see 3 tables being created. However, when I try to store an object instance of StorageArray, which contains a set of ControllerNode objects (in this case set contains just 1), I get following errors:

      11:30:01,477 DEBUG [SessionFactoryObjectFactory] JNDI lookup: hibernate/TestSessionFactory
      11:30:01,477 DEBUG [SessionFactoryObjectFactory] lookup: uid=402891eb0c69267f010c6926819e0000
      11:30:01,537 DEBUG [JDBCContext] TransactionFactory reported no active transaction; Synchronization not registered
      11:30:01,537 DEBUG [SessionImpl] opened session at timestamp: 4721931884449792
      11:30:01,547 DEBUG [JTATransaction] Looking for UserTransaction under: UserTransaction
      11:30:01,547 DEBUG [JTATransaction] Obtained UserTransaction
      11:30:01,547 DEBUG [JTATransaction] begin
      11:30:01,547 DEBUG [JTATransaction] Began a new JTA transaction
      11:30:01,557 DEBUG [JDBCContext] successfully registered Synchronization
      11:30:01,567 DEBUG [AbstractBatcher] about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
      11:30:01,567 DEBUG [ConnectionManager] opening JDBC connection
      11:30:01,567 DEBUG [SQL] select storagearr_.M_ARRAY_UID, storagearr_.M_PARENTUID as M2_0_, storagearr_.M_NAME as M3_0_, storagearr_.M_WWN as M4_0_ fro
      m tbl_StorageArray storagearr_ where storagearr_.M_ARRAY_UID=?
      11:30:01,577 INFO [STDOUT] Hibernate: select storagearr_.M_ARRAY_UID, storagearr_.M_PARENTUID as M2_0_, storagearr_.M_NAME as M3_0_, storagearr_.M_WW
      N as M4_0_ from tbl_StorageArray storagearr_ where storagearr_.M_ARRAY_UID=?
      11:30:01,577 DEBUG [AbstractBatcher] about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
      11:30:01,577 DEBUG [ConnectionManager] aggressively releasing JDBC connection
      11:30:01,587 DEBUG [ConnectionManager] releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
      11:30:01,587 DEBUG [AbstractSaveEventListener] generated identifier: UID_Array0, using strategy: org.hibernate.id.Assigned
      11:30:01,617 DEBUG [JTATransaction] commit
      11:30:01,627 DEBUG [AbstractFlushingEventListener] processing flush-time cascades
      11:30:01,627 DEBUG [AbstractFlushingEventListener] dirty checking collections
      11:30:01,637 DEBUG [Collections] Collection found: [com.test.inform.data.array.StorageArray.nodes#UID_Array0], was: [<unreferenced>] (initialized)
      11:30:01,637 DEBUG [AbstractFlushingEventListener] Flushed: 1 insertions, 0 updates, 0 deletions to 1 objects
      11:30:01,647 DEBUG [AbstractFlushingEventListener] Flushed: 1 (re)creations, 0 updates, 0 removals to 1 collections
      11:30:01,647 DEBUG [Printer] listing entities:
      11:30:01,647 DEBUG [Printer] com.test.inform.data.array.StorageArray{WWN=123456789, nodes=[com.test.inform.data.node.ControllerNode#UID_Node0], UID=UI
      D_Array0, name=Storage Array, parentUID=null}
      11:30:01,657 DEBUG [AbstractBatcher] about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
      11:30:01,687 DEBUG [ConnectionManager] opening JDBC connection
      11:30:01,687 DEBUG [SQL] insert into tbl_StorageArray (M_PARENTUID, M_NAME, M_WWN, M_ARRAY_UID) values (?, ?, ?, ?)
      11:30:01,687 INFO [STDOUT] Hibernate: insert into tbl_StorageArray (M_PARENTUID, M_NAME, M_WWN, M_ARRAY_UID) values (?, ?, ?, ?)
      11:30:01,697 DEBUG [AbstractBatcher] Executing batch size: 1
      11:30:01,697 DEBUG [AbstractBatcher] about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
      11:30:01,697 DEBUG [ConnectionManager] skipping aggressive-release due to flush cycle
      11:30:01,697 DEBUG [AbstractCollectionPersister] Inserting collection: [com.test.inform.data.array.StorageArray.nodes#UID_Array0]
      11:30:01,707 DEBUG [AbstractBatcher] about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
      11:30:01,707 DEBUG [SQL] insert into tbl_StorageArrayControllerNode (M_ARRAY_UID, M_NODE_UID) values (?, ?)
      11:30:01,707 INFO [STDOUT] Hibernate: insert into tbl_StorageArrayControllerNode (M_ARRAY_UID, M_NODE_UID) values (?, ?)
      11:30:01,707 DEBUG [AbstractCollectionPersister] done inserting collection: 1 rows inserted
      11:30:01,717 DEBUG [AbstractBatcher] Executing batch size: 1
      11:30:01,717 DEBUG [AbstractBatcher] about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
      11:30:01,747 DEBUG [ConnectionManager] skipping aggressive-release due to flush cycle
      11:30:01,747 DEBUG [JDBCExceptionReporter] Could not execute JDBC batch update [insert into tbl_StorageArrayControllerNode (M_ARRAY_UID, M_NODE_UID) v
      alues (?, ?)]
      java.sql.BatchUpdateException: failed batch
      at org.hsqldb.jdbc.jdbcStatement.executeBatch(Unknown Source)
      at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(Unknown Source)
      at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:517)
      at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:143)
      at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
      at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:993)
      at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:340)
      at org.hibernate.transaction.CacheSynchronization.beforeCompletion(CacheSynchronization.java:59)
      at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1491)
      at org.jboss.tm.TransactionImpl.beforePrepare(TransactionImpl.java:1110)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:324)
      at org.jboss.tm.TxManager.commit(TxManager.java:240)
      at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
      at org.hibernate.transaction.JTATransaction.commit(JTATransaction.java:146)
      at com.test.inform.server.hibernate.TPDHibernateClient.saveObject(Unknown Source)
      at com.test.inform.server.HibernateTest.runSaveTest(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      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:155)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      at org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:258)
      at org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:223)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:262)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:82)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      11:30:01,887 WARN [JDBCExceptionReporter] SQL Error: 0, SQLState: null
      11:30:01,887 ERROR [JDBCExceptionReporter] failed batch
      11:30:01,887 ERROR [AbstractFlushingEventListener] Could not synchronize database state with session
      org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
      at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
      at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
      at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:249)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:143)
      at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
      at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:993)
      at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:340)
      at org.hibernate.transaction.CacheSynchronization.beforeCompletion(CacheSynchronization.java:59)
      at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1491)
      at org.jboss.tm.TransactionImpl.beforePrepare(TransactionImpl.java:1110)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:324)
      at org.jboss.tm.TxManager.commit(TxManager.java:240)
      at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
      at org.hibernate.transaction.JTATransaction.commit(JTATransaction.java:146)
      at com.test.inform.server.hibernate.TPDHibernateClient.saveObject(Unknown Source)
      at com.test.inform.server.HibernateTest.runSaveTest(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      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:155)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      at org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:258)
      at org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:223)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:262)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:82)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: java.sql.BatchUpdateException: failed batch
      at org.hsqldb.jdbc.jdbcStatement.executeBatch(Unknown Source)
      at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(Unknown Source)
      at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:517)
      at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242)
      ... 49 more
      11:30:02,028 DEBUG [ConnectionManager] aggressively releasing JDBC connection
      11:30:02,038 DEBUG [ConnectionManager] releasing JDBC connection [ (open PreparedStatements: 0, globally: 0) (open ResultSets: 0, globally: 0)]
      11:30:02,038 ERROR [JTATransaction] JTA commit failed
      org.jboss.tm.JBossRollbackException: Unable to commit, tx=TransactionImpl:XidImpl[FormatId=257, GlobalId=lt_mmigal_xp/14, BranchQual=, localId=14] sta
      tus=STATUS_NO_TRANSACTION; - nested throwable: (org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:372)
      at org.jboss.tm.TxManager.commit(TxManager.java:240)
      at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.commit(ServerVMClientUserTransaction.java:140)
      at org.hibernate.transaction.JTATransaction.commit(JTATransaction.java:146)
      at com.test.inform.server.hibernate.TPDHibernateClient.saveObject(Unknown Source)
      at com.test.inform.server.HibernateTest.runSaveTest(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      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:155)
      at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      at org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:258)
      at org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:223)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:262)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
      at org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:82)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      at java.lang.Thread.run(Thread.java:595)
      Caused by: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
      at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
      at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
      at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:249)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:235)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:143)
      at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:297)
      at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
      at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:993)
      at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:340)
      at org.hibernate.transaction.CacheSynchronization.beforeCompletion(CacheSynchronization.java:59)
      at org.jboss.tm.TransactionImpl.doBeforeCompletion(TransactionImpl.java:1491)
      at org.jboss.tm.TransactionImpl.beforePrepare(TransactionImpl.java:1110)
      at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:324)
      ... 39 more
      Caused by: java.sql.BatchUpdateException: failed batch
      at org.hsqldb.jdbc.jdbcStatement.executeBatch(Unknown Source)
      at org.hsqldb.jdbc.jdbcPreparedStatement.executeBatch(Unknown Source)
      at org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch(WrappedStatement.java:517)
      at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
      at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:242)
      ... 49 more
      11:30:02,198 ERROR [[HtmlAdaptor]] Servlet.service() for servlet HtmlAdaptor threw exception