2014-02-20 37 views
1

我有一個運行在WebLogic上的Oracle BPEL流程,它使用數據庫適配器在兩個表中寫入數據。Oracle BPEL數據庫適配器約束在兩個表中寫入時出現異常 - 突然中斷

有兩個表格,TableA和TableB。 TableB具有TableA的外鍵。

我使用A_ID在TableA中創建一個條目的過程。當我使用A_ID作爲FK在TableB中創建一個條目時,我得到一個約束異常。

什麼是奇怪的,這工作上週和現在,使用相同的數據,我得到的錯誤。

數據源設置爲標準非XA數據源。

這是拋出的異常:

<env:Fault> 
    <faultcode>env:Server</faultcode> 
    <faultstring>Exception occured when binding was invoked. 
     Exception occured during invocation of JCA binding: "JCA Binding execute of 
     Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute 
     Failed Exception. 
     insert failed. Descriptor name: [Datawarehouse.TableB]. 
     Caused by java.sql.BatchUpdateException: ORA-02291: integrity constraint 
     (DWH.TABLE_A_FK) violated - parent key not found 
     . 
     ". 
     The invoked JCA adapter raised a resource exception. 
     Please examine the above error message carefully to determine a resolution. 
     </faultstring> 
     <faultactor/> 
     <detail> 
     <exception>ORA-02291: integrity constraint (DWH.TABLE_A_FK) violated -  parent key not found</exception> 
    </detail> 
    </env:Fault> 
+0

在配置數據庫適配器時,您使用表(master-detail)之間的關聯嗎? – samolisov

+0

不,我沒有。這個過程在生產中運行了好幾年沒有問題,所以我沒有考慮到這一點。 – yottamoto

+0

你可以顯示你的excepion。 – samolisov

回答

0

這有什麼好做的與Oracle BPEL。出於某種原因,無論是插入到表A還是插入到表A對錶B都不可見(第二插入在不同的事務中)。

相關問題