0
DB操作を実行するEJBを持っていて、さらにDB操作を実行するJNDI参照後に別のEJBを呼び出します。この2番目のEJBコールでは、いくつかの例外、つまりPersistenceExceptionが発生する可能性があります(コードでは、この例外がトランザクションをロールバックとしてマークしています)。トランザクションのロールバックを回避できる方法はありますか?以下は、問題を要約したコードです。少し早いですがお礼を。EJBのハンドル例外
public class Test {
ejbMthod1() {
// This method run under transaction
// Do some DB operation like update\delete
if(somecondition) {
try {
// JNDI lookup for ejb2
ejbMethod2();
}
catch(Exception ex){
// Will catching the exception here save the Transaction from rollback ?
// Is there any way I can avoid this rollback just by handling proper exceptions ?
}
}
}
}
class Test2 {
ejbMethod2() {
// Run under same transaction as caller
// do some DB operation which can throw many exception i.e. PersistenceException.
}
}
ヒント:問題が解決した場合は、それを受け入れることを検討してください。 – Mordechai