0
我有一個問題給你。我有一個組件有2種方法。第一種方法需要附加到從另一個存在於鏈中的組件(我使用Spring集成)開始的一個超級交易,第二個方法必須附加到(用於我的應用程序設計的)另一個交易。我想要的行爲是,當第二個方法拋出一個異常時,第一個方法開始並且自己重新附加到外部事務中去完成他的工作。我嘗試使用Spring框架的「嵌套」傳播來做到這一點,但沒有成功。Bea Weblogic 10.3上的Spring嵌套事務支持
這是例子:
public ComponentClassInterface{
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor=Exception.class) /*but i have used NESTED without success and I don't want use the same transaction */
public ObjectMessage activate(ObjectMessage message);
}
public ComponentAbstractClass implements ComponentClassInterface{
public void updateObjectMessage(ObjectMessage message){
/*To obtain an attached instance of previously persisted message*/
ObjectMessage message = daoMessage.getMessageByID(message.getID);/*Here i can't retreive the message...the transaction isn't yet attached*/
message.setSomeProperty("ChangedPropertyValue");
daoMessage.updateItem(message);
}
@Override
public abstract ObjectMessage activate(ObjectMessage message);
}
public ComponentConcreteClass extends ComponentAbstractClass{
@Override
public ObjectMessage activate(ObjectMessage message){
............ doSomeStuff ............
}
}
的目標是找到一個解決方案,允許我穿上」重寫/重新考慮應用程序提示流程和維護類。
問候
達米亞諾