我正在通過bpelx:exec從BPEL調用一個java類。如果該類能夠拋出一個特定的Fault(從其合作伙伴鏈接之一已知BPEL),它將簡化很多事情。我們稱之爲AdapterFault。 AdapterFault由wsimport和子類Exception生成。Oracle BPEL服務器:如何從BPEL Java調出中拋出錯誤?
這裏的嵌入式Java塊中的代碼:
Object wfr = getVariableData("inputVariable","request");
Object req = getVariableData("V_CreateServiceRequest","createTNRequestPart");
somepackage.EndpointIterator it =
new somepackage.EndpointIterator();
it.setWFRequest(wfr);
it.setPlatformName("MMSC");
it.setOperationName("createTN");
it.setRequest(req);
Object reply = it.invoke();
setVariableData("V_CreateServiceResponse","createTNResponsePart",reply);
當我宣佈了Java方法拋出AdapterFault的BPEL拒絕部署抱怨例外是未捕獲的。 Java標註步驟似乎只聲明瞭BPELFault。
我只能拋出RuntimeException,它轉到CatchAll塊而不是catch(AdapterFault)。
是否有一個簡單的方法來從java調出中拋出一個檢查錯誤?
哪個版本,你的意思是一個WSIF綁定或bpelx:exec? – oluies 2011-06-14 13:50:12
對不起,bpelx:exec。 – 2011-06-14 14:26:45