我使用的是Oracle 11g的WebLogic 10.3.3,並且一旦從Spring ResourcelessTransactionManager(主要用於測試)切換到生產DataSourceTransactionManager,就會面臨Spring批處理的奇怪問題。首先,我使用WebLogics默認驅動程序oracle.jdbc.xa.client.OracleXADataSource
,但是由於Spring無法設置隔離級別,因此失敗 - 這也記錄在here。Spring的批處理DataSourceTransactionManager在Oracle上失敗
我很好,因爲我不需要全球交易,所以我切換到oracle.jdbc.driver.OracleDriver
。現在,我收到錯誤消息
ORA-01453: SET TRANSACTION must be first statement of transaction
我不找了很多關於這個信息,有一個錯誤,但應該已經很久以前在Oracle 7。它看起來像一個事務開始之前(?)實際的作業被添加到JobRepository,並沒有正確關閉或類似的東西。