1
重複使用相同的會話我在服務類使用自動裝配Autowired StatefulKnowledgeSession。取下Drools的會話對象,並在春季
@Service( 「vbOrderService」) 公共類VbOrderService {
@Autowired
private VbOrderDao vbOrderDao ;
@Autowired
StatefulKnowledgeSession vbDiscSession;
public CpSellerDetails getStep1Data(Integer grpSellerId,Integer catalogueId) throws DataNotFoundException{
return vbOrderDao.getStep1Data(grpSellerId,null,catalogueId);
}
/*public CpSellerDetails getStep1Data(Integer cp_id,Integer orderno) throws DataNotFoundException{
return vbOrderDao.getStep1Data(cp_id,orderno);
}*/
public void getStep2Data(Integer cp_id,VbCpInfoBean info) throws DataNotFoundException{
vbOrderDao.getStep2Data(cp_id,info);
}
public Integer updateStep2Data(VbCpInfoBean info,Integer cp_id) throws UpdateFailedException{
return vbOrderDao.updateStep2Data(info,cp_id);
}
public void getOrderStep3(CpSellerDetails sellerDetails) throws DataNotFoundException {
vbOrderDao.getOrderStep3(sellerDetails);
fireRules(sellerDetails);
}
public void orderStep4(LoginBean user,CpSellerDetails sellerDetails) throws UpdateFailedException {
vbOrderDao.orderStep4(user,sellerDetails);
// fireRules(sellerDetails);
}
public CpSellerDetails getOrderDetailsForPdfGeneration(String orderno,
int user) throws DataNotFoundException {
return vbOrderDao.getOrderDetailsForPdfGeneratio(orderno,user);
}
public void addNewAddress(Address address) throws UpdateFailedException {
vbOrderDao.addNewAddress(address);
}
private void fireRules(CpSellerDetails sellerDetails){
vbDiscSession.insert(sellerDetails);
vbDiscSession.fireAllRules();
}
} 是否有可能從會議中刪除插入的對象從getOrderStep3(稱爲fireRules()),並重復使用相同的StatefulKnowledgeSession進一步requests.If可能怎麼能夠實現