使用DSS 3.1.0在WSO2 ESB 4.8.0中的事务回滚中出现问题

时间:2013-12-19 12:40:30

标签: wso2 wso2esb wso2carbon wso2dss synapse

在我的ESB 4.8.0中,Dss是3.1.0

我希望将数据可靠地插入数据库,因为我从客户端获取一个数组列表。那个数组我需要插入3个不同的表。每个表都给我返回生成的key.which将有助于插入第二个表,同样的过程为第三个表。为此我使用wso2dss在wso2esb中使用了3种不同的插入操作,插入很顺利..

@我的问题是,当我插入第2或第3表时,由于网络问题或任何数据相关问题而发生错误。在这种情况下,我的事务可以回滚。我已经在事务调解器中完成了,但它在序列中有用。它没有反映到任何其他序列,所以我怎么能这样做。 请帮我解决这个问题。

My Array:-
{"uuid":"d5ec4a32-c75d-40e7-a28d-3bc363adea11","clientobservation":"client feedback","AuditeeName":"kmkale","auditorobservation":"Auditor feedback",
"QuestionsLists":{"QuestionsList":
[{"remark":"null","userid":0,"sectionQuestionMapId":423681068369563,"sectionId":377627438253095,"DataSize":0.0,"QuestionId":423547939522200,"pageId":0,"Rank":0.0,"auditid":1387444552915,"DataType":0,"answer":1,"IsAVPT":0,"chekBoxValue":0,"QuestionType":0,"IsFollowup":0,"LovType":0,"IsRemarks":0,"IsOptional":0},
{"remark":"null","userid":0,"sectionQuestionMapId":423681072203654,"sectionId":377627438777413,"DataSize":0.0,"QuestionId":423547939522435,"pageId":0,"Rank":0.0,"auditid":1387444552915,"DataType":0,"answer":1,"IsAVPT":0,"chekBoxValue":0,"QuestionType":0,"IsFollowup":0,"LovType":0,"IsRemarks":0,"IsOptional":0},
{"remark":"null","userid":0,"sectionQuestionMapId":423681072236423,"sectionId":377627438777413,"DataSize":0.0,"QuestionId":423547939522436,"pageId":0,"Rank":0.0,"auditid":1387444552915,"DataType":0,"answer":1,"IsAVPT":0,"chekBoxValue":0,"QuestionType":0,"IsFollowup":0,"LovType":0,"IsRemarks":0,"IsOptional":0},
{"remark":"null","userid":0,"sectionQuestionMapId":423681072269192,"sectionId":377627438777413,"DataSize":0.0,"QuestionId":423547939522437,"pageId":0,"Rank":0.0,"auditid":1387444552915,"DataType":0,"answer":0,"IsAVPT":0,"chekBoxValue":0,"QuestionType":0,"IsFollowup":0,"LovType":0,"IsRemarks":0,"IsOptional":0}
]},"DeviceId":"000000000000000","OUID":419978955163229,"longitude":0.0,"PartyBranchId":420523188651661,"PartyId":0,"ClientId":414474781000924,"TaskID":-1,"TemplateId":377557205353500,"Timestamp":1387444552915,"AuditorId":417823541659158,"AuditId":1387444552915,"latitude":0.0,"PScore":10,"syncStatus":0,"AScore":6}

1 个答案:

答案 0 :(得分:1)

要使本地事务正常工作,您必须在ESB中安装DSS功能并执行相同的操作,而不是调用远程DSS服务器。因为一切都需要通过一个线程来处理,并且在ESB中使用DSS是实现这一目标的唯一方法。