[英]How to use transaction in WSO2
我正在嘗試通過WSO2將數據插入sql時使用事務。 但是交易不起作用。 我正在寫下示例代碼。
<sequence xmlns="http://ws.apache.org/ns/synapse" name="InsertOrderSequence" onError="myFaultHandler">
<log level="full"></log>
<transaction action="new"></transaction>
<dbreport useTransaction="true">
<connection>
<pool>
<dsName>jdbc/sqlserver</dsName>
</pool>
</connection>
<statement>
<sql>
insert query 1
</sql>
</statement>
<statement>
<sql>
insert query 2
</sql>
</statement>
</dbreport>
<transaction action="commit"></transaction>
</sequence>
<sequence xmlns="http://ws.apache.org/ns/synapse" name="myFaultHandler">
<transaction action="rollback"></transaction>
</sequence>
如果在第一張表中成功插入而第二張表中插入失敗,則應該進行時間回滾,但是回滾不起作用,並且在第一張表中發生數據插入。
請讓我知道我在哪里做錯了。
db報表介體不支持數據庫的批處理插入和相關寫操作。
由於這是對單個數據庫表的批量插入,因此您將必須使用數據服務功能來完成此操作。
在WSO2數據服務中提供了批處理插入功能,該功能為您提供了完成此任務的功能。
因此,您可以在ESB之上安裝數據服務功能,並通過啟用[1]中的批處理插入選項來創建數據服務。 然后從ESB調用數據服務。
[1] http://pushpalankajaya.blogspot.com/2014/02/wso2-dss-batch-insert-sample-end-to-end.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.