-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Exception while storing table per subclass hirearchy to DB
PostPosted: Tue Jan 15, 2008 6:33 pm 
Newbie

Joined: Fri Oct 05, 2007 7:34 am
Posts: 4
Hello.

I haven't found answer to my question anywhere so this my last resort. I must fix problem until next release (later this week) so I would really appreaciate any kind of additional info. I had to change business domain values for tables and columns but I hope that I didn't loose any information while doing it. If I must provide some additional info please let me know.

Problem description:
I am struggling to save graph of entity objects into DB. I have two inherited classes (ProcessingUnit extends PuSubtype1 and PuSubtype2, while Entity class extends EntityKb, EntityUb and EntityCib). Both hirearchies use table per subclass with concrete parent class (<joined-subclass> Java Persistence with Hibernate p. 205). Both parent classes are connected with each other one to many (one ProcessingUnit to many Entity).
When I try to save Entity class to DB (DB2) I get exception JDBCExceptionReporter:69 - could not insert. Is there something wrong with my approach or am I doing everything right and problem lies in DB2.

My class hirearchy works if I read data from DB.

Thanks!

Hibernate version:
3.2.5ga

Mapping documents:
hibernate.cfg.xml
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>

<property name="hibernate.connection.driver_class">com.ibm.db2.jcc.DB2Driver</property>
<property name="hibernate.connection.url">jdbc:db2://hostname:50000/jdbcresource</property>   
<property name="hibernate.connection.username">xxx</property>
<property name="hibernate.connection.password">xxx</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="dialect">org.hibernate.dialect.DB2Dialect</property>
<property name="current_session_context_class">thread</property>

<mapping resource="entity/Entity.hbm.xml"/>
<mapping resource="entity/EntityState.hbm.xml"/>
<mapping resource="entity/EntityType.hbm.xml"/>
<mapping resource="entity/ProcessingUnit.hbm.xml"/>
<mapping resource="entity/ProcessingType.hbm.xml"/>
<mapping resource="entity/Attachment.xml"/>
</session-factory>
</hibernate-configuration>


entity.hbm.xml
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>
    <class name="entity.Entity" table="INTERNALDB.ENTITY">
        <id name="entityId" type="int">
            <column name="ENTITY_ID" />
            <generator class="increment" />
        </id>
      
        <many-to-one name="entityType" class="entity.EntityType" fetch="select">
            <column name="ENTITY_TYPE_ID" not-null="true" />
        </many-to-one>
        <many-to-one name="processingUnit" class="entity.ProcessingUnit" fetch="select">
            <column name="PROCESSING_UNIT_ID" not-null="true" />
        </many-to-one>
        <many-to-one name="entityState" class="entity.EntityState" fetch="select">
            <column name="ENTITY_STATE_ID" not-null="true" />
        </many-to-one>
        <set name="attachments" inverse="true">
            <key>
                <column name="ENTITY_ID" not-null="true" />
            </key>
            <one-to-many class="entity.Attachment" />
        </set>
      
      <joined-subclass name="entity.EntityCib" table="INTERNALDB.ENTITY_CIB">
         <key column="ENTITY_ID" />
         <property name="cibId" type="string">
            <column name="CIB_ID" length="50" />
              </property>
         <property name="cibName" type="string">
                     <column name="CIB_NAME" length="30" />
                </property>
      </joined-subclass>
      
      <joined-subclass name="entity.EntityUb" table="INTERNALDB.ENTITY_UB">
         <key column="ENTITY_ID" />
         <property name="ubId" type="string">
                     <column name="UB_ID" length="50" />
         </property>
              <property name="ubName" type="string">
                     <column name="UB_NAME" length="50" />
              </property>
      </joined-subclass>

      <joined-subclass name="entity.EntityKf" table="INTERNALDB.ENTITY_KF">
         <key column="ENTITY_ID" />
              <property name="kfId" type="string">
                     <column name="KF_ID" length="50" />
              </property>
              <property name="kfName" type="string">
                     <column name="KF_NAME" length="50" />
              </property>
      </joined-subclass>
    </class>
</hibernate-mapping>


processingUnit.hbm.xml
Code:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 3.12.2007 13:11:28 by Hibernate Tools 3.2.0.b9 -->
<hibernate-mapping>
    <class name="entity.ProcessingUnit" table="INTERNALDB.PROCESSING_UNIT">
        <id name="processingUnitId" type="int">
            <column name="PROCESSING_UNIT_ID" />
            <generator class="assigned" />
        </id>
        <many-to-one name="processingType" class="entity.ProcessingType" fetch="select">
            <column name="PROCESSING_TYPE_ID" not-null="true" />
        </many-to-one>
        <property name="processed" type="int">
            <column name="PROCESSED" />
        </property>
        <set name="entities" inverse="true">
            <key>
                <column name="PROCESSING_UNIT_ID" not-null="true" />
            </key>
            <one-to-many class="entity.Entity" />
        </set>
      <joined-subclass name="entity.PuSubtypeOne" table="INTERNALDB.PU_SUBTYPE_ONE">
         <key column="PROCESSING_UNIT_ID" />
         <property name="dateTo" type="string">
            <column name="DATE_TO" length="50" />
         </property>
      </joined-subclass>

      <joined-subclass name="entity.PuSubtypeTwo" table="INTERNALDB.PU_SUBTYPE_TWO">
           <key column="PROCESSING_UNIT_ID" />
         <property name="dateFrom" type="date">
            <column name="DATE_FROM" length="10" />
         </property>
      </joined-subclass>
    </class>
</hibernate-mapping>


Code between sessionFactory.openSession() and session.close():
Code:
    public void storeEntity()
    {
        // create processing unit reference
        int processingUnitId = 515420;
        ProcessingUnit processingUnit = new PuSubtypeOne();
        processingUnit.setProcessingUnitId(processingUnitId);
       
        EntityState entityState = new EntityState();
        entityState.setEntityStateId(1); // code table
       
        EntityType entityType = new EntityType();
        entityType.setEntityTypeId(1); // code table
       
        EntityKf entity1 = new EntityKf();
        entity1.setKfId("KfId");
        entity1.setKfName("KfName");
        entity1.setEntityState(entityState);
        entity1.setProcessingUnit(processingUnit);
        entity1.setEntityType(entityType);
       
        storeEntity(entity1);
    }

    public void storeEntity(Entity entity)
    {
        Session session = null;
        Transaction tns = null;
       
        try
        {
            session = HibernateSessionFactory.getInstance("hibernate.cfg.xml").getCurrentSession();
            tns = session.beginTransaction();
            session.save(entity);
            tns.commit();
        } catch (Exception e)
        {
            e.printStackTrace();
        }
    }

   

Full stack trace of any exception that occurs:
Code:
2008-01-15 22:24:58,235 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,235 DEBUG JDBCExceptionReporter:69 - could not insert: [entity.EntityKf] [insert into INTERNALDB.ENTITY         (ENTITY_TYPE_ID, PROCESSING_UNIT_ID, ENTITY_STATE_ID, ENTITY_ID)
values (?, ?, ?, ?)]
com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][20105][11271] The DDM object is not supported.  Unsupported DDM object code point: 0x220a.
   at com.ibm.db2.jcc.b.eb.E(eb.java:4545)
   at com.ibm.db2.jcc.b.eb.A(eb.java:638)
   at com.ibm.db2.jcc.b.gb.o(gb.java:751)
   at com.ibm.db2.jcc.b.gb.g(gb.java:143)
   at com.ibm.db2.jcc.b.gb.a(gb.java:39)
   at com.ibm.db2.jcc.b.w.a(w.java:34)
   at com.ibm.db2.jcc.b.vb.g(vb.java:139)
   at com.ibm.db2.jcc.c.fg.n(fg.java:1177)
   at com.ibm.db2.jcc.c.gg.eb(gg.java:1862)
   at com.ibm.db2.jcc.c.gg.d(gg.java:2295)
   at com.ibm.db2.jcc.c.gg.W(gg.java:457)
   at com.ibm.db2.jcc.c.gg.executeUpdate(gg.java:440)
   at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
   at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
   at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
   at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
   at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
   at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
   at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
   at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
   at package.PrototypeDaoImpl.storeEntity(PrototypeDaoImpl.java:114)
   at package.Main.storeEntity(Main.java:155)
   at package.Main.execute(Main.java:250)
   at package.Main.main(Main.java:258)
2008-01-15 22:24:58,235 WARN JDBCExceptionReporter:77 - SQL Error: -4499, SQLState: 58015
2008-01-15 22:24:58,235 ERROR JDBCExceptionReporter:78 - [ibm][db2][jcc][t4][20105][11271] The DDM object is not supported.  Unsupported DDM object code point: 0x220a.
2008-01-15 22:24:58,235 ERROR AbstractFlushingEventListener:301 - Could not synchronize database state with session
org.hibernate.exception.GenericJDBCException: could not insert: [entity.EntityKf]
   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.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
   at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
   at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
   at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
   at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
   at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
   at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
   at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
   at package.PrototypeDaoImpl.storeEntity(PrototypeDaoImpl.java:114)
   at package.Main.storeEntity(Main.java:155)
   at package.Main.execute(Main.java:250)
   at package.Main.main(Main.java:258)
Caused by: com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][20105][11271] The DDM object is not supported.  Unsupported DDM object code point: 0x220a.
   at com.ibm.db2.jcc.b.eb.E(eb.java:4545)
   at com.ibm.db2.jcc.b.eb.A(eb.java:638)
   at com.ibm.db2.jcc.b.gb.o(gb.java:751)
   at com.ibm.db2.jcc.b.gb.g(gb.java:143)
   at com.ibm.db2.jcc.b.gb.a(gb.java:39)
   at com.ibm.db2.jcc.b.w.a(w.java:34)
   at com.ibm.db2.jcc.b.vb.g(vb.java:139)
   at com.ibm.db2.jcc.c.fg.n(fg.java:1177)
   at com.ibm.db2.jcc.c.gg.eb(gg.java:1862)
   at com.ibm.db2.jcc.c.gg.d(gg.java:2295)
   at com.ibm.db2.jcc.c.gg.W(gg.java:457)
   at com.ibm.db2.jcc.c.gg.executeUpdate(gg.java:440)
   at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
   ... 14 more
org.hibernate.exception.GenericJDBCException: could not insert: [entity.EntityKf]
   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.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
   at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
   at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
   at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
   at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
   at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
   at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
   at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
   at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
   at package.PrototypeDaoImpl.storeEntity(PrototypeDaoImpl.java:114)
   at package.Main.storeEntity(Main.java:155)
   at package.Main.execute(Main.java:250)
   at package.Main.main(Main.java:258)
Caused by: com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][20105][11271] The DDM object is not supported.  Unsupported DDM object code point: 0x220a.
   at com.ibm.db2.jcc.b.eb.E(eb.java:4545)
   at com.ibm.db2.jcc.b.eb.A(eb.java:638)
   at com.ibm.db2.jcc.b.gb.o(gb.java:751)
   at com.ibm.db2.jcc.b.gb.g(gb.java:143)
   at com.ibm.db2.jcc.b.gb.a(gb.java:39)
   at com.ibm.db2.jcc.b.w.a(w.java:34)
   at com.ibm.db2.jcc.b.vb.g(vb.java:139)
   at com.ibm.db2.jcc.c.fg.n(fg.java:1177)
   at com.ibm.db2.jcc.c.gg.eb(gg.java:1862)
   at com.ibm.db2.jcc.c.gg.d(gg.java:2295)
   at com.ibm.db2.jcc.c.gg.W(gg.java:457)
   at com.ibm.db2.jcc.c.gg.executeUpdate(gg.java:440)
   at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
   at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
   ... 14 more


Name and version of the database you are using:
DB2 Version 9.1

The generated SQL (show_sql=true):
Code:
    select
        max(ENTITY_ID)
    from
        INTERNALDB.ENTITY

    select
        entitytype.ENTITY_TYPE_ID,
        entitytype.PROCESSING_TYPE_ID as PROCESSING2_17_,
        entitytype.NAME as NAME17_,
        entitytype.NAME_DEF as NAME4_17_
    from
        INTERNALDB.ENTITY_TYPE entitytype
    where
        entitytype.ENTITY_TYPE_ID=?

    select
        pusubtype_.PROCESSING_UNIT_ID,
        pusubtype_1_.PROCESSING_TYPE_ID as PROCESSING3_24_,
        pusubtype_1_.PROCESSED as PROCESSED24_,
        pusubtype_.DATE_TO as DATE2_25_
    from
        INTERNALDB.PU_SUBTYPE pusubtype_
    inner join
        INTERNALDB.PROCESSING_UNIT pusubtype_1_
            on pusubtype_.PROCESSING_UNIT_ID=pusubtype_1_.PROCESSING_UNIT_ID
    where
        pusubtype_.PROCESSING_UNIT_ID=?

    select
        entitystate_.ENTITY_STATE_ID,
        entitystate_.NAME as NAME5_,
        entitystate_.NAME_DEF as NAME3_5_
    from
        INTERNALDB.ENTITY_STATE entitystate_
    where
        entitystate_.ENTITY_STATE_ID=?

    insert
    into
        INTERNALDB.ENTITY
        (ENTITY_TYPE_ID, PROCESSING_UNIT_ID, ENTITY_STATE_ID, ENTITY_ID)
    values
        (?, ?, ?, ?)



Debug level Hibernate log excerpt:
Code:
2008-01-15 22:24:58,079 DEBUG SessionFactoryObjectFactory:39 - initializing class SessionFactoryObjectFactory
2008-01-15 22:24:58,079 DEBUG SessionFactoryObjectFactory:76 - registered: 402887bc177f573501177f57385f0000 (unnamed)
2008-01-15 22:24:58,079 INFO SessionFactoryObjectFactory:82 - Not binding factory to JNDI, no JNDI name configured
2008-01-15 22:24:58,079 DEBUG SessionFactoryImpl:308 - instantiated session factory
2008-01-15 22:24:58,079 DEBUG SessionFactoryImpl:392 - Checking 0 named HQL queries
2008-01-15 22:24:58,095 DEBUG SessionFactoryImpl:412 - Checking 0 named SQL queries
2008-01-15 22:24:58,110 DEBUG SessionImpl:220 - opened session at timestamp: 12004322980
2008-01-15 22:24:58,142 DEBUG JDBCTransaction:54 - begin
2008-01-15 22:24:58,142 DEBUG ConnectionManager:421 - opening JDBC connection
2008-01-15 22:24:58,142 DEBUG JDBCTransaction:59 - current autocommit status: false
2008-01-15 22:24:58,142 DEBUG IncrementGenerator:80 - fetching initial value: select max(ENTITY_ID) from INTERNALDB.ENTITY
2008-01-15 22:24:58,142 DEBUG AbstractBatcher:366 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
2008-01-15 22:24:58,157 DEBUG SQL:401 -
    select
        max(ENTITY_ID)
    from
        INTERNALDB.ENTITY
Hibernate:
    select
        max(ENTITY_ID)
    from
        INTERNALDB.ENTITY
2008-01-15 22:24:58,189 DEBUG IncrementGenerator:95 - first free id: 213800
2008-01-15 22:24:58,189 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,189 DEBUG AbstractSaveEventListener:112 - generated identifier: 213800, using strategy: org.hibernate.id.IncrementGenerator
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:366 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
2008-01-15 22:24:58,204 DEBUG SQL:401 -
    select
        entitytype.ENTITY_TYPE_ID,
        entitytype.PROCESSING_TYPE_ID as PROCESSING2_17_,
        entitytype.NAME as NAME17_,
        entitytype.NAME_DEF as NAME4_17_
    from
        INTERNALDB.ENTITY_TYPE entitytype
    where
        entitytype.ENTITY_TYPE_ID=?
Hibernate:
    select
        entitytype.ENTITY_TYPE_ID,
        entitytype.PROCESSING_TYPE_ID as PROCESSING2_17_,
        entitytype.NAME as NAME17_,
        entitytype.NAME_DEF as NAME4_17_
    from
        INTERNALDB.ENTITY_TYPE entitytype
    where
        entitytype.ENTITY_TYPE_ID=?
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:366 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
2008-01-15 22:24:58,204 DEBUG SQL:401 -
    select
        pusubtype_.PROCESSING_UNIT_ID,
        pusubtype_1_.PROCESSING_TYPE_ID as PROCESSING3_24_,
        pusubtype_1_.PROCESSED as PROCESSED24_,
        pusubtype_.DATE_TO as DATE2_25_
    from
        INTERNALDB.PU_SUBTYPE pusubtype_
    inner join
        INTERNALDB.PROCESSING_UNIT pusubtype_1_
            on pusubtype_.PROCESSING_UNIT_ID=pusubtype_1_.PROCESSING_UNIT_ID
    where
        pusubtype_.PROCESSING_UNIT_ID=?
Hibernate:
    select
        pusubtype_.PROCESSING_UNIT_ID,
        pusubtype_1_.PROCESSING_TYPE_ID as PROCESSING3_24_,
        pusubtype_1_.PROCESSED as PROCESSED24_,
        pusubtype_.DATE_TO as DATE2_25_
    from
        INTERNALDB.PU_SUBTYPE pusubtype_
    inner join
        INTERNALDB.PROCESSING_UNIT pusubtype_1_
            on pusubtype_.PROCESSING_UNIT_ID=pusubtype_1_.PROCESSING_UNIT_ID
    where
        pusubtype_.PROCESSING_UNIT_ID=?
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:366 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
2008-01-15 22:24:58,204 DEBUG SQL:401 -
    select
        entitystate_.ENTITY_STATE_ID,
        entitystate_.NAME as NAME5_,
        entitystate_.NAME_DEF as NAME3_5_
    from
        INTERNALDB.ENTITY_STATE entitystate_
    where
        entitystate_.ENTITY_STATE_ID=?
Hibernate:
    select
        entitystate_.ENTITY_STATE_ID,
        entitystate_.NAME as NAME5_,
        entitystate_.NAME_DEF as NAME3_5_
    from
        INTERNALDB.ENTITY_STATE entitystate_
    where
        entitystate_.ENTITY_STATE_ID=?
2008-01-15 22:24:58,204 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,220 DEBUG JDBCTransaction:103 - commit
2008-01-15 22:24:58,220 DEBUG AbstractFlushingEventListener:111 - processing flush-time cascades
2008-01-15 22:24:58,220 DEBUG AbstractFlushingEventListener:154 - dirty checking collections
2008-01-15 22:24:58,220 DEBUG Collections:176 - Collection found: [entity.Entity.attachments#213800], was: [<unreferenced>] (initialized)
2008-01-15 22:24:58,220 DEBUG AbstractFlushingEventListener:85 - Flushed: 1 insertions, 0 updates, 0 deletions to 1 objects
2008-01-15 22:24:58,220 DEBUG AbstractFlushingEventListener:91 - Flushed: 2 (re)creations, 0 updates, 0 removals to 2 collections
2008-01-15 22:24:58,220 DEBUG Printer:83 - listing entities:
2008-01-15 22:24:58,220 DEBUG Printer:90 - entity.EntityKf{entityType=entity.EntityType#52, kfId=KfId, KfName=KfName, entityId=213800, processingUnit=entity.ProcessingUnit#515420, entityState=entity.EntityState#1, attachments=[]}
2008-01-15 22:24:58,220 DEBUG AbstractBatcher:366 - about to open PreparedStatement (open PreparedStatements: 0, globally: 0)
2008-01-15 22:24:58,220 DEBUG SQL:401 -
    insert
    into
        INTERNALDB.ENTITY
        (ENTITY_TYPE_ID, PROCESSING_UNIT_ID, ENTITY_STATE_ID, ENTITY_ID)
    values
        (?, ?, ?, ?)
Hibernate:
    insert
    into
        INTERNALDB.ENTITY
        (ENTITY_TYPE_ID, PROCESSING_UNIT_ID, ENTITY_STATE_ID, ENTITY_ID)
    values
        (?, ?, ?, ?)
2008-01-15 22:24:58,235 DEBUG AbstractBatcher:374 - about to close PreparedStatement (open PreparedStatements: 1, globally: 1)
2008-01-15 22:24:58,235 DEBUG JDBCExceptionReporter:69 - could not insert: [entity.EntityKf] [insert into INTERNALDB.ENTITY         (ENTITY_TYPE_ID, PROCESSING_UNIT_ID, ENTITY_STATE_ID, ENTITY_ID)
values (?, ?, ?, ?)]
com.ibm.db2.jcc.c.DisconnectException: [ibm][db2][jcc][t4][20105][11271] The DDM object is not supported.  Unsupported DDM object code point: 0x220a.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jan 21, 2008 10:02 am 
Newbie

Joined: Fri Oct 05, 2007 7:34 am
Posts: 4
Problem was not in hibernate mapping, which is correct, but rather in values, that were inserted in hirearchy. For BigDecimal field I tried to insert
Code:
new BigDecimal(0.8)

which was translated into value 0.8000000000000000444089209850062616169452667236328125


So when hibernate tried to insert values into table DB2 responded with error:
Code:
"Numeric literal $value is not valid because its value is out of range.  SQLSTATE=42820


Unfortunatelly hibernate masks this exception message and throws some other error. When i changed value 0.8 with 0.0, insertion executed without problems.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.