Announcement Announcement Module
Collapse
No announcement yet.
Hibernate/Spring .load() = an update on transaction commit! Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hibernate/Spring .load() = an update on transaction commit!

    I am trying to do a read from the database via a .load() per the Spring framework (getHibernateTemplate()). I'm using Spring with CMT SLSB's so the Hibernate Session is scoped with the transaction. Everything works fine for writes, but when I do a read, this works fine when I debug (it gets the value) until it tries to commit. At that point it is trying to do an UPDATE of a NULL for the FK of the child (see log below).

    Why would it try to UPDATE when I'm just doing a .load()?

    Thanks,
    Lou

    Hibernate version:
    2.1.6

    Mapping documents (abbreviated):
    Code:
    <hibernate-mapping package="com.mitchell.services.technical.claim.dao.vo">
       <class name="ClmClaim" table="CLM_CLAIM">
          <id
             name="id"
             type="java.lang.Long"
             column="CLAIM_ID"
          >
             <generator class="sequence">
                <param name="sequence">CLAIM_ID_SEQ</param>
             </generator>         
          </id>
          <version name="tcn" column="TCN" type="java.lang.Long" unsaved-value="null"/>
          
    
          <set
             inverse="true"
             lazy="true"
             name="exposureSet"
             cascade="save-update"
          >
             <key column="CLAIM_ID" />
             <one-to-many class="ClmClaimExposure" />
          </set>
    
       </class>
    </hibernate-mapping>
    
    <hibernate-mapping package="com.mitchell.services.technical.claim.dao.vo">
       <class name="ClmClaimExposure" table="CLM_CLAIM_EXPOSURE" lazy="true">
          <id
             name="id"
             type="java.lang.Long"
             column="CLAIM_EXPOSURE_ID"
          >
             <generator class="sequence">
                <param name="sequence">EXPOSURE_ID_SEQ</param>
             </generator>
          </id>
    
          <version name="tcn" column="TCN" type="java.lang.Long" unsaved-value="null"/>
    
          <many-to-one
             class="ClmClaim"
             name="claim"
             not-null="true"
          >
             <column name="CLAIM_ID" />
          </many-to-one>
    
       </class>
    </hibernate-mapping>
    Code between sessionFactory.openSession() and session.close():
    Code:
        
    public Object find&#40;Serializable id&#41; throws DaoException &#123;
            Monitor mon = MonitorFactory.start&#40;this.getClass&#40;&#41;.getName&#40;&#41; + "&#58;find"&#41;;
            try &#123;
                return getHibernateTemplate&#40;&#41;.load&#40;getReferenceClass&#40;&#41;, id&#41;;
            &#125; catch &#40;DataAccessException e&#41; &#123;
                throw new DaoException&#40;e&#41;;
            &#125; finally &#123;
                mon.stop&#40;&#41;;
            &#125;
    &#125;

    Full stack trace of any exception that occurs:
    Code:
    12&#58;30&#58;26,234 ERROR JDBCExceptionReporter&#58;38 - could not update&#58; &#91;com.mitchell.services.technical.claim.dao.vo.ClmClaimExposure#453&#93;
    java.sql.SQLException&#58; ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    
    	at oracle.jdbc.driver.DatabaseError.throwSqlException&#40;DatabaseError.java&#58;125&#41;
    	at oracle.jdbc.driver.T4CTTIoer.processError&#40;T4CTTIoer.java&#58;305&#41;
    	at oracle.jdbc.driver.T4CTTIoer.processError&#40;T4CTTIoer.java&#58;272&#41;
    	at oracle.jdbc.driver.T4C8Oall.receive&#40;T4C8Oall.java&#58;623&#41;
    	at oracle.jdbc.driver.T4CPreparedStatement.doOall8&#40;T4CPreparedStatement.java&#58;181&#41;
    	at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows&#40;T4CPreparedStatement.java&#58;543&#41;
    	at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout&#40;OracleStatement.java&#58;1027&#41;
    	at oracle.jdbc.driver.OraclePreparedStatement.executeInternal&#40;OraclePreparedStatement.java&#58;2885&#41;
    	at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate&#40;OraclePreparedStatement.java&#58;2957&#41;
    	at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate&#40;PreparedStatement.java&#58;115&#41;
    	at net.sf.hibernate.persister.EntityPersister.update&#40;EntityPersister.java&#58;672&#41;
    	at net.sf.hibernate.persister.EntityPersister.update&#40;EntityPersister.java&#58;642&#41;
    	at net.sf.hibernate.impl.ScheduledUpdate.execute&#40;ScheduledUpdate.java&#58;52&#41;
    	at net.sf.hibernate.impl.SessionImpl.executeAll&#40;SessionImpl.java&#58;2414&#41;
    	at net.sf.hibernate.impl.SessionImpl.execute&#40;SessionImpl.java&#58;2368&#41;
    	at net.sf.hibernate.impl.SessionImpl.flush&#40;SessionImpl.java&#58;2236&#41;
    	at org.springframework.orm.hibernate.SessionFactoryUtils$SpringSessionSynchronization.beforeCommit&#40;SessionFactoryUtils.java&#58;406&#41;
    	at org.springframework.orm.hibernate.SessionFactoryUtils$JtaSessionSynchronization.beforeCompletion&#40;SessionFactoryUtils.java&#58;470&#41;
    	at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions&#40;ServerSCInfo.java&#58;1010&#41;
    	at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain&#40;ServerSCInfo.java&#58;115&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain&#40;ServerTransactionImpl.java&#58;1184&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare&#40;ServerTransactionImpl.java&#58;1910&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.internalCommit&#40;ServerTransactionImpl.java&#58;273&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.commit&#40;ServerTransactionImpl.java&#58;244&#41;
    	at weblogic.ejb20.internal.BaseEJBObject.postInvoke&#40;BaseEJBObject.java&#58;299&#41;
    	at weblogic.ejb20.internal.StatelessEJBObject.postInvoke&#40;StatelessEJBObject.java&#58;140&#41;
    	at com.bea.wlw.runtime.core.bean.SyncDispatcher_k1mrl8_EOImpl.invoke&#40;SyncDispatcher_k1mrl8_EOImpl.java&#58;56&#41;
    	at com.bea.wlw.runtime.core.dispatcher.Dispatcher.remoteDispatch&#40;Dispatcher.java&#58;161&#41;
    	at com.bea.wlw.runtime.core.dispatcher.Dispatcher.dispatch&#40;Dispatcher.java&#58;49&#41;
    	at com.bea.wlw.runtime.core.dispatcher.HttpServerHelper.executePostRequest&#40;HttpServerHelper.java&#58;713&#41;
    	at com.bea.wlw.runtime.core.dispatcher.HttpServer.doPost&#40;HttpServer.java&#58;49&#41;
    	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;760&#41;
    	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;853&#41;
    	at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run&#40;ServletStubImpl.java&#58;996&#41;
    	at weblogic.servlet.internal.ServletStubImpl.invokeServlet&#40;ServletStubImpl.java&#58;419&#41;
    	at weblogic.servlet.internal.ServletStubImpl.invokeServlet&#40;ServletStubImpl.java&#58;315&#41;
    	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run&#40;WebAppServletContext.java&#58;6452&#41;
    	at weblogic.security.acl.internal.AuthenticatedSubject.doAs&#40;AuthenticatedSubject.java&#58;321&#41;
    	at weblogic.security.service.SecurityManager.runAs&#40;SecurityManager.java&#58;118&#41;
    	at weblogic.servlet.internal.WebAppServletContext.invokeServlet&#40;WebAppServletContext.java&#58;3661&#41;
    	at weblogic.servlet.internal.ServletRequestImpl.execute&#40;ServletRequestImpl.java&#58;2630&#41;
    	at weblogic.kernel.ExecuteThread.execute&#40;ExecuteThread.java&#58;219&#41;
    	at weblogic.kernel.ExecuteThread.run&#40;ExecuteThread.java&#58;178&#41;
    12&#58;30&#58;26,250 ERROR SessionImpl&#58;2375 - Could not synchronize database state with session
    Name and version of the database you are using:
    Oracle 9.2.0.1

    Debug level Hibernate log excerpt:
    Code:
    12&#58;30&#58;09,234 DEBUG SessionFactoryUtils&#58;183 - Opening Hibernate session
    12&#58;30&#58;09,515 DEBUG SessionFactoryUtils&#58;209 - Registering JTA transaction synchronization for Hibernate session
    12&#58;30&#58;09,671 DEBUG TransactionSynchronizationManager&#58;141 - Bound value &#91;org.springframework.orm.hibernate.SessionHolder@178e9db&#93; for key &#91;net.sf.hibernate.impl.SessionFactoryImpl@36f0e0&#93; to thread &#91;ExecuteThread&#58; '8' for queue&#58; 'weblogic.kernel.Default'&#93;
    12&#58;30&#58;09,671 DEBUG HibernateInterceptor&#58;88 - Found thread-bound session for Hibernate interceptor
    12&#58;30&#58;11,281 DEBUG TransactionSynchronizationManager&#58;117 - Retrieved value &#91;org.springframework.orm.hibernate.SessionHolder@178e9db&#93; for key &#91;net.sf.hibernate.impl.SessionFactoryImpl@36f0e0&#93; bound to thread &#91;ExecuteThread&#58; '8' for queue&#58; 'weblogic.kernel.Default'&#93;
    12&#58;30&#58;11,390 DEBUG SQL&#58;237 - select clmclaim0_.CLAIM_ID as CLAIM_ID0_, clmclaim0_.TCN as TCN0_, clmclaim0_.LAW_ENFORCEMENT_FLAG as LAW_ENFO3_0_, clmclaim0_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmclaim0_.UPDATED_BY as UPDATED_BY0_, clmclaim0_.CO_CD as CO_CD0_, clmclaim0_.UPDATED_DT as UPDATED_DT0_, clmclaim0_.CLAIM_PROPERTY_FLAG as CLAIM_PR8_0_, clmclaim0_.ARCHIVE_FLAG as ARCHIVE_9_0_, clmclaim0_.CLAIM_NUMBER as CLAIM_N10_0_, clmclaim0_.CREATED_DT as CREATED_DT0_, clmclaim0_.CREATED_BY as CREATED_BY0_, clmclaim0_.FRAUD_INV_FLAG as FRAUD_I13_0_, clmclaim0_.POLICY_NUMBER as POLICY_14_0_, clmclaim0_.CLAIM_SENSITIVITY_FLAG as CLAIM_S15_0_, clmclaim0_.CLAIM_SENSITIVITY_CATEGORY as CLAIM_S16_0_, clmclaim0_.EPD_ORG_ID as EPD_ORG_ID0_, clmclaim0_.WITNESS_FLAG as WITNESS18_0_, clmclaim0_.CLAIM_MEMO as CLAIM_MEMO0_, clmclaim0_.SET_FOR_AUDIT as SET_FOR20_0_, clmclaim0_.ARCHIVE_DATE as ARCHIVE21_0_, clmclaim0_.INJURED_FLAG as INJURED22_0_, clmclaim0_.LOSS_EVENT_ID as LOSS_EV23_0_, clmclaim0_.CLAIM_STATUS_ID as CLAIM_S24_0_ from CLM_CLAIM clmclaim0_ where clmclaim0_.CLAIM_ID=?
    12&#58;30&#58;19,734 DEBUG HibernateInterceptor&#58;108 - Not closing pre-bound Hibernate session after interceptor
    12&#58;30&#58;22,015 DEBUG SQL&#58;237 - select exposurese0_.CLAIM_EXPOSURE_ID as CLAIM_EX1___, exposurese0_.CLAIM_ID as CLAIM_ID__, exposurese0_.CLAIM_EXPOSURE_ID as CLAIM_EX1_0_, exposurese0_.TCN as TCN0_, exposurese0_.EPD_ORG_USER_ID as EPD_ORG_3_0_, exposurese0_.CO_CD as CO_CD0_, exposurese0_.UPDATED_BY as UPDATED_BY0_, exposurese0_.UPDATED_DT as UPDATED_DT0_, exposurese0_.EXPOSURE_NUMBER as EXPOSURE7_0_, exposurese0_.CLAIM_NUMBER as CLAIM_NU8_0_, exposurese0_.CREATED_BY as CREATED_BY0_, exposurese0_.CREATED_DT as CREATED_DT0_, exposurese0_.EPD_ORG_ID as EPD_ORG_ID0_, exposurese0_.TOTAL_CLAIM_EXPOSURE_AMOUNT as TOTAL_C12_0_, exposurese0_.DESCRIPTION_OF_WHAT_HAPPENED as DESCRIP13_0_, exposurese0_.DEDUCTIBLE_AMOUNT as DEDUCTI14_0_, exposurese0_.DATE_OF_LOSS as DATE_OF15_0_, exposurese0_.CLAIM_VEHICLE_ID as CLAIM_V16_0_, exposurese0_.LOSS_TYPE_ID as LOSS_TY17_0_, exposurese0_.POLICY_COVERAGE_ID as POLICY_18_0_, exposurese0_.COVERAGE_TYPE_ID as COVERAG19_0_, exposurese0_.CLAIM_ID as CLAIM_ID0_ from CLM_CLAIM_EXPOSURE exposurese0_ where exposurese0_.CLAIM_ID=?
    12&#58;30&#58;25,578 DEBUG WlwThreadContext&#58;41 - endInvocation on myEJBControl&#58; com.mitchell.services.technical.claim.ejb.ClaimLocal.readClaim&#40;&#41;
    12&#58;30&#58;25,578 DEBUG Claim&#58;41 - Id=myEJBControl; Method=com.mitchell.services.technical.claim.ejb.ClaimLocal.readClaim&#40;&#41;; Result=com.mitchell.services.technical.claim.dao.vo.ClmClaim@932da022
    ...
    12&#58;30&#58;25,578 DEBUG JcsProxy&#58;41 - Popping caller subject 
    12&#58;30&#58;25,875 DEBUG SQL&#58;237 - select clmpolicys0_.POLICY_ID as POLICY_ID__, clmpolicys0_.CLAIM_ID as CLAIM_ID__, clmpolicys0_.POLICY_ID as POLICY_ID0_, clmpolicys0_.TCN as TCN0_, clmpolicys0_.EFFECTIVE_DATE_END as EFFECTIV3_0_, clmpolicys0_.CO_CD as CO_CD0_, clmpolicys0_.EFFECTIVE_DATE_START as EFFECTIV5_0_, clmpolicys0_.UPDATED_BY as UPDATED_BY0_, clmpolicys0_.UPDATED_DT as UPDATED_DT0_, clmpolicys0_.POLICY_TYPE as POLICY_T8_0_, clmpolicys0_.CREATED_BY as CREATED_BY0_, clmpolicys0_.CREATED_DT as CREATED_DT0_, clmpolicys0_.POLICY_NUMBER as POLICY_11_0_, clmpolicys0_.POLICY_STATE_PROVINCE as POLICY_12_0_, clmpolicys0_.DESCRIPTION as DESCRIP13_0_, clmpolicys0_.CLAIM_ID as CLAIM_ID0_ from CLM_POLICY clmpolicys0_ where clmpolicys0_.CLAIM_ID=?
    12&#58;30&#58;25,891 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;25,891 DEBUG SQL&#58;237 - select clmpartyse0_.PARTY_ID as PARTY_ID__, clmpartyse0_.CLAIM_ID as CLAIM_ID__, clmpartyse0_.PARTY_ID as PARTY_ID0_, clmpartyse0_.TCN as TCN0_, clmpartyse0_.OWNER_INDICATOR as OWNER_IN3_0_, clmpartyse0_.UPDATED_BY as UPDATED_BY0_, clmpartyse0_.NAME_SUFFIX as NAME_SUF5_0_, clmpartyse0_.EMPLOYER as EMPLOYER0_, clmpartyse0_.COMPANY_ID_NUMBER as COMPANY_7_0_, clmpartyse0_.CREATED_BY as CREATED_BY0_, clmpartyse0_.CREATED_DT as CREATED_DT0_, clmpartyse0_.ALIAS_NAME as ALIAS_NAME0_, clmpartyse0_.NAME_PREFIX as NAME_PR11_0_, clmpartyse0_.RELATION as RELATION0_, clmpartyse0_.COMPANY_NAME as COMPANY13_0_, clmpartyse0_.FEDERAL_TAX_ID as FEDERAL14_0_, clmpartyse0_.COMPANY_ID_TYPE as COMPANY15_0_, clmpartyse0_.JOB_TITLE as JOB_TITLE0_, clmpartyse0_.BIRTHDATE as BIRTHDATE0_, clmpartyse0_.PARTY_TYPE as PARTY_TYPE0_, clmpartyse0_.UPDATED_DT as UPDATED_DT0_, clmpartyse0_.PARTY_TO_THE_CLAIM as PARTY_T20_0_, clmpartyse0_.MEMO as MEMO0_, clmpartyse0_.LAST_NAME as LAST_NAME0_, clmpartyse0_.MIDDLE_NAME as MIDDLE_23_0_, clmpartyse0_.FIRST_NAME as FIRST_NAME0_, clmpartyse0_.CLAIM_VEHICLE_ID as CLAIM_V25_0_, clmpartyse0_.POLICY_ID as POLICY_ID0_, clmpartyse0_.CLAIM_EXPOSURE_ID as CLAIM_E27_0_, clmpartyse0_.CLM_CONTACT_PREFERENCE_ID as CLM_CON28_0_, clmpartyse0_.CLAIM_ID as CLAIM_ID0_ from CLM_PARTY clmpartyse0_ where clmpartyse0_.CLAIM_ID=?
    12&#58;30&#58;25,891 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;25,906 DEBUG SQL&#58;237 - select clmlossobj0_.LOSS_OBJECT_ID as LOSS_OBJ1___, clmlossobj0_.CLAIM_ID as CLAIM_ID__, clmlossobj0_.LOSS_OBJECT_ID as LOSS_OBJ1_0_, clmlossobj0_.TCN as TCN0_, clmlossobj0_.LOSS_OBJECT_DESC as LOSS_OBJ3_0_, clmlossobj0_.CO_CD as CO_CD0_, clmlossobj0_.UPDATED_BY as UPDATED_BY0_, clmlossobj0_.UPDATED_DT as UPDATED_DT0_, clmlossobj0_.REPORTED_TO as REPORTED7_0_, clmlossobj0_.CREATED_BY as CREATED_BY0_, clmlossobj0_.CREATED_DT as CREATED_DT0_, clmlossobj0_.REPORTED_DT as REPORTE10_0_, clmlossobj0_.REPORTED_BY as REPORTE11_0_, clmlossobj0_.LOSS_EVENT_ID as LOSS_EV12_0_, clmlossobj0_.CLAIM_VEHICLE_ID as CLAIM_V13_0_, clmlossobj0_.CLAIM_ID as CLAIM_ID0_ from CLM_LOSS_OBJECT clmlossobj0_ where clmlossobj0_.CLAIM_ID=?
    12&#58;30&#58;25,906 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;25,922 DEBUG SQL&#58;237 - select clmactivit0_.ACTIVITY_LOG_ID as ACTIVITY1___, clmactivit0_.CLAIM_ID as CLAIM_ID__, clmactivit0_.ACTIVITY_LOG_ID as ACTIVITY1_0_, clmactivit0_.LOG_ENTRY_TS as LOG_ENTR2_0_, clmactivit0_.MODIFIED_BY as MODIFIED3_0_, clmactivit0_.MODIFIED_DT as MODIFIED4_0_, clmactivit0_.LOG_ENTRY as LOG_ENTRY0_, clmactivit0_.CREATED_DT as CREATED_DT0_, clmactivit0_.CREATED_BY as CREATED_BY0_ from CLM_ACTIVITY_LOG clmactivit0_ where clmactivit0_.CLAIM_ID=?
    12&#58;30&#58;25,922 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;25,937 DEBUG SQL&#58;237 - select clmattachm0_.ATTACHMENT_ID as ATTACHME1___, clmattachm0_.EXPOSURE_ID as EXPOSUR17___, clmattachm0_.ATTACHMENT_ID as ATTACHME1_1_, clmattachm0_.TCN as TCN1_, clmattachm0_.EPD_ORG_USER_ID as EPD_ORG_3_1_, clmattachm0_.IMAGE_ATTACHMENT as IMAGE_AT4_1_, clmattachm0_.CO_CD as CO_CD1_, clmattachm0_.UPDATED_BY as UPDATED_BY1_, clmattachm0_.UPDATED_DT as UPDATED_DT1_, clmattachm0_.ATTACHMENT_TYPE as ATTACHME8_1_, clmattachm0_.CREATED_DT as CREATED_DT1_, clmattachm0_.CREATED_BY as CREATED_BY1_, clmattachm0_.DOC_FILEPATH as DOC_FIL11_1_, clmattachm0_.MEMO as MEMO1_, clmattachm0_.EPD_ORG_ID as EPD_ORG_ID1_, clmattachm0_.XML_ATTACHMENT as XML_ATT14_1_, clmattachm0_.DESCRIPTION as DESCRIP15_1_, clmattachm0_.CLAIM_ID as CLAIM_ID1_, clmattachm0_.EXPOSURE_ID as EXPOSUR17_1_, clmclaim1_.CLAIM_ID as CLAIM_ID0_, clmclaim1_.TCN as TCN0_, clmclaim1_.LAW_ENFORCEMENT_FLAG as LAW_ENFO3_0_, clmclaim1_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmclaim1_.UPDATED_BY as UPDATED_BY0_, clmclaim1_.CO_CD as CO_CD0_, clmclaim1_.UPDATED_DT as UPDATED_DT0_, clmclaim1_.CLAIM_PROPERTY_FLAG as CLAIM_PR8_0_, clmclaim1_.ARCHIVE_FLAG as ARCHIVE_9_0_, clmclaim1_.CLAIM_NUMBER as CLAIM_N10_0_, clmclaim1_.CREATED_DT as CREATED_DT0_, clmclaim1_.CREATED_BY as CREATED_BY0_, clmclaim1_.FRAUD_INV_FLAG as FRAUD_I13_0_, clmclaim1_.POLICY_NUMBER as POLICY_14_0_, clmclaim1_.CLAIM_SENSITIVITY_FLAG as CLAIM_S15_0_, clmclaim1_.CLAIM_SENSITIVITY_CATEGORY as CLAIM_S16_0_, clmclaim1_.EPD_ORG_ID as EPD_ORG_ID0_, clmclaim1_.WITNESS_FLAG as WITNESS18_0_, clmclaim1_.CLAIM_MEMO as CLAIM_MEMO0_, clmclaim1_.SET_FOR_AUDIT as SET_FOR20_0_, clmclaim1_.ARCHIVE_DATE as ARCHIVE21_0_, clmclaim1_.INJURED_FLAG as INJURED22_0_, clmclaim1_.LOSS_EVENT_ID as LOSS_EV23_0_, clmclaim1_.CLAIM_STATUS_ID as CLAIM_S24_0_ from CLM_ATTACHMENT clmattachm0_ left outer join CLM_CLAIM clmclaim1_ on clmattachm0_.CLAIM_ID=clmclaim1_.CLAIM_ID where clmattachm0_.EXPOSURE_ID=?
    12&#58;30&#58;25,937 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 1
    12&#58;30&#58;25,953 DEBUG SQL&#58;237 - select clmpartyse0_.PARTY_ID as PARTY_ID__, clmpartyse0_.CLAIM_EXPOSURE_ID as CLAIM_E27___, clmpartyse0_.PARTY_ID as PARTY_ID1_, clmpartyse0_.TCN as TCN1_, clmpartyse0_.OWNER_INDICATOR as OWNER_IN3_1_, clmpartyse0_.UPDATED_BY as UPDATED_BY1_, clmpartyse0_.NAME_SUFFIX as NAME_SUF5_1_, clmpartyse0_.EMPLOYER as EMPLOYER1_, clmpartyse0_.COMPANY_ID_NUMBER as COMPANY_7_1_, clmpartyse0_.CREATED_BY as CREATED_BY1_, clmpartyse0_.CREATED_DT as CREATED_DT1_, clmpartyse0_.ALIAS_NAME as ALIAS_NAME1_, clmpartyse0_.NAME_PREFIX as NAME_PR11_1_, clmpartyse0_.RELATION as RELATION1_, clmpartyse0_.COMPANY_NAME as COMPANY13_1_, clmpartyse0_.FEDERAL_TAX_ID as FEDERAL14_1_, clmpartyse0_.COMPANY_ID_TYPE as COMPANY15_1_, clmpartyse0_.JOB_TITLE as JOB_TITLE1_, clmpartyse0_.BIRTHDATE as BIRTHDATE1_, clmpartyse0_.PARTY_TYPE as PARTY_TYPE1_, clmpartyse0_.UPDATED_DT as UPDATED_DT1_, clmpartyse0_.PARTY_TO_THE_CLAIM as PARTY_T20_1_, clmpartyse0_.MEMO as MEMO1_, clmpartyse0_.LAST_NAME as LAST_NAME1_, clmpartyse0_.MIDDLE_NAME as MIDDLE_23_1_, clmpartyse0_.FIRST_NAME as FIRST_NAME1_, clmpartyse0_.CLAIM_VEHICLE_ID as CLAIM_V25_1_, clmpartyse0_.POLICY_ID as POLICY_ID1_, clmpartyse0_.CLAIM_EXPOSURE_ID as CLAIM_E27_1_, clmpartyse0_.CLM_CONTACT_PREFERENCE_ID as CLM_CON28_1_, clmpartyse0_.CLAIM_ID as CLAIM_ID1_, clmclaim1_.CLAIM_ID as CLAIM_ID0_, clmclaim1_.TCN as TCN0_, clmclaim1_.LAW_ENFORCEMENT_FLAG as LAW_ENFO3_0_, clmclaim1_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmclaim1_.UPDATED_BY as UPDATED_BY0_, clmclaim1_.CO_CD as CO_CD0_, clmclaim1_.UPDATED_DT as UPDATED_DT0_, clmclaim1_.CLAIM_PROPERTY_FLAG as CLAIM_PR8_0_, clmclaim1_.ARCHIVE_FLAG as ARCHIVE_9_0_, clmclaim1_.CLAIM_NUMBER as CLAIM_N10_0_, clmclaim1_.CREATED_DT as CREATED_DT0_, clmclaim1_.CREATED_BY as CREATED_BY0_, clmclaim1_.FRAUD_INV_FLAG as FRAUD_I13_0_, clmclaim1_.POLICY_NUMBER as POLICY_14_0_, clmclaim1_.CLAIM_SENSITIVITY_FLAG as CLAIM_S15_0_, clmclaim1_.CLAIM_SENSITIVITY_CATEGORY as CLAIM_S16_0_, clmclaim1_.EPD_ORG_ID as EPD_ORG_ID0_, clmclaim1_.WITNESS_FLAG as WITNESS18_0_, clmclaim1_.CLAIM_MEMO as CLAIM_MEMO0_, clmclaim1_.SET_FOR_AUDIT as SET_FOR20_0_, clmclaim1_.ARCHIVE_DATE as ARCHIVE21_0_, clmclaim1_.INJURED_FLAG as INJURED22_0_, clmclaim1_.LOSS_EVENT_ID as LOSS_EV23_0_, clmclaim1_.CLAIM_STATUS_ID as CLAIM_S24_0_ from CLM_PARTY clmpartyse0_ left outer join CLM_CLAIM clmclaim1_ on clmpartyse0_.CLAIM_ID=clmclaim1_.CLAIM_ID where clmpartyse0_.CLAIM_EXPOSURE_ID=?
    12&#58;30&#58;25,953 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 1
    12&#58;30&#58;25,969 DEBUG SQL&#58;237 - select clmdiaryse0_.DIARY_ID as DIARY_ID__, clmdiaryse0_.CLAIM_EXPOSURE_ID as CLAIM_E15___, clmdiaryse0_.DIARY_ID as DIARY_ID1_, clmdiaryse0_.TCN as TCN1_, clmdiaryse0_.EPD_ORG_USER_ID as EPD_ORG_3_1_, clmdiaryse0_.ALERT_FLAG as ALERT_FLAG1_, clmdiaryse0_.CO_CD as CO_CD1_, clmdiaryse0_.UPDATED_BY as UPDATED_BY1_, clmdiaryse0_.UPDATED_DT as UPDATED_DT1_, clmdiaryse0_.CLAIM_ID_FOR as CLAIM_ID8_1_, clmdiaryse0_.ACCESSIBILITY as ACCESSIB9_1_, clmdiaryse0_.DIARY_ENTRY as DIARY_E10_1_, clmdiaryse0_.CREATED_BY as CREATED_BY1_, clmdiaryse0_.CREATED_DT as CREATED_DT1_, clmdiaryse0_.DOCUMENT_ID as DOCUMEN13_1_, clmdiaryse0_.EPD_ORG_ID as EPD_ORG_ID1_, clmdiaryse0_.CLAIM_EXPOSURE_ID as CLAIM_E15_1_, clmdiaryse0_.CLAIM_ID as CLAIM_ID1_, clmclaim1_.CLAIM_ID as CLAIM_ID0_, clmclaim1_.TCN as TCN0_, clmclaim1_.LAW_ENFORCEMENT_FLAG as LAW_ENFO3_0_, clmclaim1_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmclaim1_.UPDATED_BY as UPDATED_BY0_, clmclaim1_.CO_CD as CO_CD0_, clmclaim1_.UPDATED_DT as UPDATED_DT0_, clmclaim1_.CLAIM_PROPERTY_FLAG as CLAIM_PR8_0_, clmclaim1_.ARCHIVE_FLAG as ARCHIVE_9_0_, clmclaim1_.CLAIM_NUMBER as CLAIM_N10_0_, clmclaim1_.CREATED_DT as CREATED_DT0_, clmclaim1_.CREATED_BY as CREATED_BY0_, clmclaim1_.FRAUD_INV_FLAG as FRAUD_I13_0_, clmclaim1_.POLICY_NUMBER as POLICY_14_0_, clmclaim1_.CLAIM_SENSITIVITY_FLAG as CLAIM_S15_0_, clmclaim1_.CLAIM_SENSITIVITY_CATEGORY as CLAIM_S16_0_, clmclaim1_.EPD_ORG_ID as EPD_ORG_ID0_, clmclaim1_.WITNESS_FLAG as WITNESS18_0_, clmclaim1_.CLAIM_MEMO as CLAIM_MEMO0_, clmclaim1_.SET_FOR_AUDIT as SET_FOR20_0_, clmclaim1_.ARCHIVE_DATE as ARCHIVE21_0_, clmclaim1_.INJURED_FLAG as INJURED22_0_, clmclaim1_.LOSS_EVENT_ID as LOSS_EV23_0_, clmclaim1_.CLAIM_STATUS_ID as CLAIM_S24_0_ from CLM_DIARY clmdiaryse0_ left outer join CLM_CLAIM clmclaim1_ on clmdiaryse0_.CLAIM_ID=clmclaim1_.CLAIM_ID where clmdiaryse0_.CLAIM_EXPOSURE_ID=?
    12&#58;30&#58;25,969 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 1
    12&#58;30&#58;25,984 DEBUG SQL&#58;237 - select clmalertse0_.ALERT_ID as ALERT_ID__, clmalertse0_.CLAIM_EXPOSURE_ID as CLAIM_E21___, clmalertse0_.ALERT_ID as ALERT_ID1_, clmalertse0_.TCN as TCN1_, clmalertse0_.ACTIVITY as ACTIVITY1_, clmalertse0_.EPD_ORG_USER_ID as EPD_ORG_4_1_, clmalertse0_.APP_USER_ID as APP_USER5_1_, clmalertse0_.UPDATED_BY as UPDATED_BY1_, clmalertse0_.CO_CD as CO_CD1_, clmalertse0_.UPDATED_DT as UPDATED_DT1_, clmalertse0_.PRIORITY as PRIORITY1_, clmalertse0_.ALERT_TRIGGER as ALERT_T10_1_, clmalertse0_.CREATED_DT as CREATED_DT1_, clmalertse0_.CREATED_BY as CREATED_BY1_, clmalertse0_.STOP_TIMESTAMP as STOP_TI13_1_, clmalertse0_.START_TIMESTAMP as START_T14_1_, clmalertse0_.EPD_ORG_ID as EPD_ORG_ID1_, clmalertse0_.ALERT_TYPE_ID as ALERT_T16_1_, clmalertse0_.NOTE as NOTE1_, clmalertse0_.CURRENT_STATE as CURRENT18_1_, clmalertse0_.ALERT_DATE as ALERT_DATE1_, clmalertse0_.ALERT_MESSAGE as ALERT_M20_1_, clmalertse0_.CLAIM_EXPOSURE_ID as CLAIM_E21_1_, clmalertse0_.DIARY_ID as DIARY_ID1_, clmalertse0_.CLAIM_ID as CLAIM_ID1_, clmclaim1_.CLAIM_ID as CLAIM_ID0_, clmclaim1_.TCN as TCN0_, clmclaim1_.LAW_ENFORCEMENT_FLAG as LAW_ENFO3_0_, clmclaim1_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmclaim1_.UPDATED_BY as UPDATED_BY0_, clmclaim1_.CO_CD as CO_CD0_, clmclaim1_.UPDATED_DT as UPDATED_DT0_, clmclaim1_.CLAIM_PROPERTY_FLAG as CLAIM_PR8_0_, clmclaim1_.ARCHIVE_FLAG as ARCHIVE_9_0_, clmclaim1_.CLAIM_NUMBER as CLAIM_N10_0_, clmclaim1_.CREATED_DT as CREATED_DT0_, clmclaim1_.CREATED_BY as CREATED_BY0_, clmclaim1_.FRAUD_INV_FLAG as FRAUD_I13_0_, clmclaim1_.POLICY_NUMBER as POLICY_14_0_, clmclaim1_.CLAIM_SENSITIVITY_FLAG as CLAIM_S15_0_, clmclaim1_.CLAIM_SENSITIVITY_CATEGORY as CLAIM_S16_0_, clmclaim1_.EPD_ORG_ID as EPD_ORG_ID0_, clmclaim1_.WITNESS_FLAG as WITNESS18_0_, clmclaim1_.CLAIM_MEMO as CLAIM_MEMO0_, clmclaim1_.SET_FOR_AUDIT as SET_FOR20_0_, clmclaim1_.ARCHIVE_DATE as ARCHIVE21_0_, clmclaim1_.INJURED_FLAG as INJURED22_0_, clmclaim1_.LOSS_EVENT_ID as LOSS_EV23_0_, clmclaim1_.CLAIM_STATUS_ID as CLAIM_S24_0_ from CLM_ALERT clmalertse0_ left outer join CLM_CLAIM clmclaim1_ on clmalertse0_.CLAIM_ID=clmclaim1_.CLAIM_ID where clmalertse0_.CLAIM_EXPOSURE_ID=?
    12&#58;30&#58;25,984 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 1
    12&#58;30&#58;26,000 DEBUG SQL&#58;237 - select clmactivit0_.ACTIVITY_LOG_ID as ACTIVITY1___, clmactivit0_.CLAIM_EXPOSURE_ID as CLAIM_EX9___, clmactivit0_.ACTIVITY_LOG_ID as ACTIVITY1_0_, clmactivit0_.LOG_ENTRY_TS as LOG_ENTR2_0_, clmactivit0_.MODIFIED_BY as MODIFIED3_0_, clmactivit0_.MODIFIED_DT as MODIFIED4_0_, clmactivit0_.LOG_ENTRY as LOG_ENTRY0_, clmactivit0_.CREATED_DT as CREATED_DT0_, clmactivit0_.CREATED_BY as CREATED_BY0_ from CLM_ACTIVITY_LOG clmactivit0_ where clmactivit0_.CLAIM_EXPOSURE_ID=?
    12&#58;30&#58;26,000 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 1
    12&#58;30&#58;26,000 DEBUG SQL&#58;237 - select clmdiaryse0_.DIARY_ID as DIARY_ID__, clmdiaryse0_.CLAIM_ID as CLAIM_ID__, clmdiaryse0_.DIARY_ID as DIARY_ID0_, clmdiaryse0_.TCN as TCN0_, clmdiaryse0_.EPD_ORG_USER_ID as EPD_ORG_3_0_, clmdiaryse0_.ALERT_FLAG as ALERT_FLAG0_, clmdiaryse0_.CO_CD as CO_CD0_, clmdiaryse0_.UPDATED_BY as UPDATED_BY0_, clmdiaryse0_.UPDATED_DT as UPDATED_DT0_, clmdiaryse0_.CLAIM_ID_FOR as CLAIM_ID8_0_, clmdiaryse0_.ACCESSIBILITY as ACCESSIB9_0_, clmdiaryse0_.DIARY_ENTRY as DIARY_E10_0_, clmdiaryse0_.CREATED_BY as CREATED_BY0_, clmdiaryse0_.CREATED_DT as CREATED_DT0_, clmdiaryse0_.DOCUMENT_ID as DOCUMEN13_0_, clmdiaryse0_.EPD_ORG_ID as EPD_ORG_ID0_, clmdiaryse0_.CLAIM_EXPOSURE_ID as CLAIM_E15_0_, clmdiaryse0_.CLAIM_ID as CLAIM_ID0_ from CLM_DIARY clmdiaryse0_ where clmdiaryse0_.CLAIM_ID=?
    12&#58;30&#58;26,000 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;26,016 DEBUG SQL&#58;237 - select clmalertse0_.ALERT_ID as ALERT_ID__, clmalertse0_.CLAIM_ID as CLAIM_ID__, clmalertse0_.ALERT_ID as ALERT_ID0_, clmalertse0_.TCN as TCN0_, clmalertse0_.ACTIVITY as ACTIVITY0_, clmalertse0_.EPD_ORG_USER_ID as EPD_ORG_4_0_, clmalertse0_.APP_USER_ID as APP_USER5_0_, clmalertse0_.UPDATED_BY as UPDATED_BY0_, clmalertse0_.CO_CD as CO_CD0_, clmalertse0_.UPDATED_DT as UPDATED_DT0_, clmalertse0_.PRIORITY as PRIORITY0_, clmalertse0_.ALERT_TRIGGER as ALERT_T10_0_, clmalertse0_.CREATED_DT as CREATED_DT0_, clmalertse0_.CREATED_BY as CREATED_BY0_, clmalertse0_.STOP_TIMESTAMP as STOP_TI13_0_, clmalertse0_.START_TIMESTAMP as START_T14_0_, clmalertse0_.EPD_ORG_ID as EPD_ORG_ID0_, clmalertse0_.ALERT_TYPE_ID as ALERT_T16_0_, clmalertse0_.NOTE as NOTE0_, clmalertse0_.CURRENT_STATE as CURRENT18_0_, clmalertse0_.ALERT_DATE as ALERT_DATE0_, clmalertse0_.ALERT_MESSAGE as ALERT_M20_0_, clmalertse0_.CLAIM_EXPOSURE_ID as CLAIM_E21_0_, clmalertse0_.DIARY_ID as DIARY_ID0_, clmalertse0_.CLAIM_ID as CLAIM_ID0_ from CLM_ALERT clmalertse0_ where clmalertse0_.CLAIM_ID=?
    12&#58;30&#58;26,016 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    12&#58;30&#58;26,016 DEBUG SQL&#58;237 - select clmattachm0_.ATTACHMENT_ID as ATTACHME1___, clmattachm0_.CLAIM_ID as CLAIM_ID__, clmattachm0_.ATTACHMENT_ID as ATTACHME1_0_, clmattachm0_.TCN as TCN0_, clmattachm0_.EPD_ORG_USER_ID as EPD_ORG_3_0_, clmattachm0_.IMAGE_ATTACHMENT as IMAGE_AT4_0_, clmattachm0_.CO_CD as CO_CD0_, clmattachm0_.UPDATED_BY as UPDATED_BY0_, clmattachm0_.UPDATED_DT as UPDATED_DT0_, clmattachm0_.ATTACHMENT_TYPE as ATTACHME8_0_, clmattachm0_.CREATED_DT as CREATED_DT0_, clmattachm0_.CREATED_BY as CREATED_BY0_, clmattachm0_.DOC_FILEPATH as DOC_FIL11_0_, clmattachm0_.MEMO as MEMO0_, clmattachm0_.EPD_ORG_ID as EPD_ORG_ID0_, clmattachm0_.XML_ATTACHMENT as XML_ATT14_0_, clmattachm0_.DESCRIPTION as DESCRIP15_0_, clmattachm0_.CLAIM_ID as CLAIM_ID0_, clmattachm0_.EXPOSURE_ID as EXPOSUR17_0_ from CLM_ATTACHMENT clmattachm0_ where clmattachm0_.CLAIM_ID=?
    12&#58;30&#58;26,016 DEBUG LongType&#58;46 - binding '1099' to parameter&#58; 1
    ...
    12&#58;30&#58;26,109 DEBUG ProcessTrackingBean&#58;41 - -flushEventsCommitted&#40;&#41;
    12&#58;30&#58;26,109 DEBUG JpdContainer&#58;41 - -TxnListener.beforeCompletion&#40;&#41;
    12&#58;30&#58;26,109 DEBUG SessionFactoryUtils&#58;404 - Flushing Hibernate session on transaction synchronization
    12&#58;30&#58;26,156 DEBUG SQL&#58;237 - update CLM_CLAIM_EXPOSURE set TCN=?, EPD_ORG_USER_ID=?, CO_CD=?, UPDATED_BY=?, UPDATED_DT=?, EXPOSURE_NUMBER=?, CLAIM_NUMBER=?, CREATED_BY=?, CREATED_DT=?, EPD_ORG_ID=?, TOTAL_CLAIM_EXPOSURE_AMOUNT=?, DESCRIPTION_OF_WHAT_HAPPENED=?, DEDUCTIBLE_AMOUNT=?, DATE_OF_LOSS=?, CLAIM_VEHICLE_ID=?, LOSS_TYPE_ID=?, POLICY_COVERAGE_ID=?, COVERAGE_TYPE_ID=?, CLAIM_ID=? where CLAIM_EXPOSURE_ID=? and TCN=?
    12&#58;30&#58;26,156 DEBUG LongType&#58;46 - binding '1' to parameter&#58; 1
    12&#58;30&#58;26,172 DEBUG IntegerType&#58;41 - binding null to parameter&#58; 2
    12&#58;30&#58;26,172 DEBUG StringType&#58;46 - binding 'JH' to parameter&#58; 3
    12&#58;30&#58;26,172 DEBUG StringType&#58;46 - binding 'Lou S' to parameter&#58; 4
    12&#58;30&#58;26,187 DEBUG TimestampType&#58;41 - binding null to parameter&#58; 5
    12&#58;30&#58;26,187 DEBUG StringType&#58;46 - binding 'NEW12344' to parameter&#58; 6
    12&#58;30&#58;26,187 DEBUG StringType&#58;46 - binding 'ClaimNumber10012' to parameter&#58; 7
    12&#58;30&#58;26,187 DEBUG StringType&#58;46 - binding 'Lou S' to parameter&#58; 8
    12&#58;30&#58;26,187 DEBUG TimestampType&#58;46 - binding '17 August 2004 16&#58;18&#58;33' to parameter&#58; 9
    12&#58;30&#58;26,187 DEBUG IntegerType&#58;41 - binding null to parameter&#58; 10
    12&#58;30&#58;26,187 DEBUG BigDecimalType&#58;41 - binding null to parameter&#58; 11
    12&#58;30&#58;26,187 DEBUG StringType&#58;41 - binding null to parameter&#58; 12
    12&#58;30&#58;26,187 DEBUG BigDecimalType&#58;41 - binding null to parameter&#58; 13
    12&#58;30&#58;26,187 DEBUG TimestampType&#58;41 - binding null to parameter&#58; 14
    12&#58;30&#58;26,187 DEBUG LongType&#58;41 - binding null to parameter&#58; 15
    12&#58;30&#58;26,187 DEBUG LongType&#58;41 - binding null to parameter&#58; 16
    12&#58;30&#58;26,203 DEBUG LongType&#58;41 - binding null to parameter&#58; 17
    12&#58;30&#58;26,203 DEBUG LongType&#58;41 - binding null to parameter&#58; 18
    12&#58;30&#58;26,203 DEBUG LongType&#58;41 - binding null to parameter&#58; 19
    12&#58;30&#58;26,203 DEBUG LongType&#58;46 - binding '453' to parameter&#58; 20
    12&#58;30&#58;26,203 DEBUG LongType&#58;46 - binding '0' to parameter&#58; 21
    12&#58;30&#58;26,219  WARN JDBCExceptionReporter&#58;38 - SQL Error&#58; 1407, SQLState&#58; 72000
    12&#58;30&#58;26,234 ERROR JDBCExceptionReporter&#58;46 - ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    
    12&#58;30&#58;26,234  WARN JDBCExceptionReporter&#58;38 - SQL Error&#58; 1407, SQLState&#58; 72000
    12&#58;30&#58;26,234 ERROR JDBCExceptionReporter&#58;46 - ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    
    12&#58;30&#58;26,234 ERROR JDBCExceptionReporter&#58;38 - could not update&#58; &#91;com.mitchell.services.technical.claim.dao.vo.ClmClaimExposure#453&#93;
    java.sql.SQLException&#58; ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    
    	at oracle.jdbc.driver.DatabaseError.throwSqlException&#40;DatabaseError.java&#58;125&#41;
    	at oracle.jdbc.driver.T4CTTIoer.processError&#40;T4CTTIoer.java&#58;305&#41;
    	at oracle.jdbc.driver.T4CTTIoer.processError&#40;T4CTTIoer.java&#58;272&#41;
    	at oracle.jdbc.driver.T4C8Oall.receive&#40;T4C8Oall.java&#58;623&#41;
    	at oracle.jdbc.driver.T4CPreparedStatement.doOall8&#40;T4CPreparedStatement.java&#58;181&#41;
    	at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows&#40;T4CPreparedStatement.java&#58;543&#41;
    	at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout&#40;OracleStatement.java&#58;1027&#41;
    	at oracle.jdbc.driver.OraclePreparedStatement.executeInternal&#40;OraclePreparedStatement.java&#58;2885&#41;
    	at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate&#40;OraclePreparedStatement.java&#58;2957&#41;
    	at weblogic.jdbc.wrapper.PreparedStatement.executeUpdate&#40;PreparedStatement.java&#58;115&#41;
    	at net.sf.hibernate.persister.EntityPersister.update&#40;EntityPersister.java&#58;672&#41;
    	at net.sf.hibernate.persister.EntityPersister.update&#40;EntityPersister.java&#58;642&#41;
    	at net.sf.hibernate.impl.ScheduledUpdate.execute&#40;ScheduledUpdate.java&#58;52&#41;
    	at net.sf.hibernate.impl.SessionImpl.executeAll&#40;SessionImpl.java&#58;2414&#41;
    	at net.sf.hibernate.impl.SessionImpl.execute&#40;SessionImpl.java&#58;2368&#41;
    	at net.sf.hibernate.impl.SessionImpl.flush&#40;SessionImpl.java&#58;2236&#41;
    	at org.springframework.orm.hibernate.SessionFactoryUtils$SpringSessionSynchronization.beforeCommit&#40;SessionFactoryUtils.java&#58;406&#41;
    	at org.springframework.orm.hibernate.SessionFactoryUtils$JtaSessionSynchronization.beforeCompletion&#40;SessionFactoryUtils.java&#58;470&#41;
    	at weblogic.transaction.internal.ServerSCInfo.callBeforeCompletions&#40;ServerSCInfo.java&#58;1010&#41;
    	at weblogic.transaction.internal.ServerSCInfo.startPrePrepareAndChain&#40;ServerSCInfo.java&#58;115&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.localPrePrepareAndChain&#40;ServerTransactionImpl.java&#58;1184&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.globalPrePrepare&#40;ServerTransactionImpl.java&#58;1910&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.internalCommit&#40;ServerTransactionImpl.java&#58;273&#41;
    	at weblogic.transaction.internal.ServerTransactionImpl.commit&#40;ServerTransactionImpl.java&#58;244&#41;
    	at weblogic.ejb20.internal.BaseEJBObject.postInvoke&#40;BaseEJBObject.java&#58;299&#41;
    	at weblogic.ejb20.internal.StatelessEJBObject.postInvoke&#40;StatelessEJBObject.java&#58;140&#41;
    	at com.bea.wlw.runtime.core.bean.SyncDispatcher_k1mrl8_EOImpl.invoke&#40;SyncDispatcher_k1mrl8_EOImpl.java&#58;56&#41;
    	at com.bea.wlw.runtime.core.dispatcher.Dispatcher.remoteDispatch&#40;Dispatcher.java&#58;161&#41;
    	at com.bea.wlw.runtime.core.dispatcher.Dispatcher.dispatch&#40;Dispatcher.java&#58;49&#41;
    	at com.bea.wlw.runtime.core.dispatcher.HttpServerHelper.executePostRequest&#40;HttpServerHelper.java&#58;713&#41;
    	at com.bea.wlw.runtime.core.dispatcher.HttpServer.doPost&#40;HttpServer.java&#58;49&#41;
    	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;760&#41;
    	at javax.servlet.http.HttpServlet.service&#40;HttpServlet.java&#58;853&#41;
    	at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run&#40;ServletStubImpl.java&#58;996&#41;
    	at weblogic.servlet.internal.ServletStubImpl.invokeServlet&#40;ServletStubImpl.java&#58;419&#41;
    	at weblogic.servlet.internal.ServletStubImpl.invokeServlet&#40;ServletStubImpl.java&#58;315&#41;
    	at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run&#40;WebAppServletContext.java&#58;6452&#41;
    	at weblogic.security.acl.internal.AuthenticatedSubject.doAs&#40;AuthenticatedSubject.java&#58;321&#41;
    	at weblogic.security.service.SecurityManager.runAs&#40;SecurityManager.java&#58;118&#41;
    	at weblogic.servlet.internal.WebAppServletContext.invokeServlet&#40;WebAppServletContext.java&#58;3661&#41;
    	at weblogic.servlet.internal.ServletRequestImpl.execute&#40;ServletRequestImpl.java&#58;2630&#41;
    	at weblogic.kernel.ExecuteThread.execute&#40;ExecuteThread.java&#58;219&#41;
    	at weblogic.kernel.ExecuteThread.run&#40;ExecuteThread.java&#58;178&#41;
    12&#58;30&#58;26,250 ERROR SessionImpl&#58;2375 - Could not synchronize database state with session
    ...
    12&#58;30&#58;26,250  INFO SQLStateSQLExceptionTranslator&#58;64 - Translating SQLException with SQLState '72000' and errorCode '1407' and message &#91;ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    &#93;; SQL was &#91;null&#93; for task &#91;SessionSynchronization&#93;
    12&#58;30&#58;26,266 ERROR SessionFactoryUtils&#58;473 - beforeCommit callback threw exception
    org.springframework.jdbc.UncategorizedSQLException&#58; &#40;SessionSynchronization&#41;&#58; encountered SQLException &#91;ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    &#93;; nested exception is java.sql.SQLException&#58; ORA-01407&#58; cannot update &#40;"CLM"."CLM_CLAIM_EXPOSURE"."CLAIM_ID"&#41; to NULL
    ...
    12&#58;30&#58;26,359 DEBUG ProcessTrackingBean&#58;41 - -flushEventsRolledBack&#40;&#41;
    12&#58;30&#58;26,359 DEBUG TransactionSynchronizationManager&#58;163 - Removed value &#91;org.springframework.orm.hibernate.SessionHolder@178e9db&#93; for key &#91;net.sf.hibernate.impl.SessionFactoryImpl@36f0e0&#93; from thread &#91;ExecuteThread&#58; '8' for queue&#58; 'weblogic.kernel.Default'&#93;
    12&#58;30&#58;26,359 DEBUG SessionFactoryUtils&#58;348 - Closing Hibernate session

  • #2
    Why would it try to UPDATE when I'm just doing a .load()?
    That's wired. The only situation I can think of an update is, if the session contains dirty objects. Before a query is issued by Hibernate every dirty object is written into the database since it may take part of the querying process... .

    So try to check if this is part of an enclosing application transaction and the session to contain dirty objects.

    A simple check (dirty trick!) may be to clear the session before you call your query. If it works, your session is dirty before the query is performed.


    So try the clear() trick, maybe it helps to figure out the reason. Also you may debug into the hibernate core and check if it fetches something from the first level cache to be updated.

    Comment


    • #3
      Yup, that was it! My partner in crime was nulling out references (ie. the FKs) to prevent circular references when serializing into XML. This was making the objects dirty and thus my issue.

      Thanks Martin!

      Comment

      Working...
      X