Description of problem: Platform BZ for https://issues.jboss.org/browse/RIFTSAW-491 When an invoked BPEL process throws a fault, BPELInvoke blocks the action processing regardless of its "abortOnFault" property and subsequent actions in the pipeline are never invoked. How reproducible: Easy Steps to Reproduce: Adding the following line to HelloWorld.bpel in the bpel_hello_world quickstart shipped with SOA-P 5.2. <bpel:throw name="anErrorOccured" faultName="tns:somethingBadHappened" /> Actual results: BPELInvoke terminates the action pipeline without throwing an exception. Expected results: BPELInvoke should throw an exception to terminate the action pipeline.
Gary Brown <gary.pi4tech> made a comment on jira RIFTSAW-491 Solution will be to throw an exception if just the fault name is specified, but no message body - indicating an unexpected or technical fault. In these situations the "abort on fault" property will be ignored, as this property was intended to allow the action pipeline to continue and process the fault content, which is not present in this case. Let me know if you believe the "abort on fault" property has a role to play in this situation.
Gary Brown <gary.pi4tech> updated the status of jira RIFTSAW-491 to Resolved
Gary Brown <gary.pi4tech> made a comment on jira RIFTSAW-491 BPELInvoke action now throws an exception is a fault is returned without message content.
Sato Tadayoshi <tadayosi> made a comment on jira RIFTSAW-491 Gary, Thanks! I don't think the "abort on fault" property needs to play any role in this unexpected situation. It makes sense that the "abort on fault" property works only for defined faults. We need better documentation but it should be dealt with in another issue.
Fix is available in riftsaw 2.3.x branch. Over to PM to decide which version it should go in.
SOA-PM: Can we please include the latest Riftsaw in SOA-P 5.3 to get benefit of this fix? GSS considers this a 'high' priority as it is customer-facing. Thanks, Rick
Hi, which build of SOA 5.3 is supposed to included this fix? Thanks Regards Marek
Hi Marek Not sure if this was in a previous build, but should have been included in the latest build, which I assume was last week? If you are trying out the latest release and still not working, can you attach your testcase for further investigation. Regards Gary
Hi Gary, no I haven't tried it yet. I just wanted to know which builds to use for testing since the respective fields are not set. Thanks for the info :). Regards Marek
Verified in JBoss SOA-P 5.3.0.ER4
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: In previous versions, BPELInvoke would block action processing on BPEL process faults. When an invoked BPEL process threw a fault, BPELInvoke blocked it regardless of its "abortOnFault" property. As a result, subsequent actions in the pipeline were never invoked. This has been fixed in 5.3.
Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1 +1 @@ -In previous versions, BPELInvoke would block action processing on BPEL process faults. When an invoked BPEL process threw a fault, BPELInvoke blocked it regardless of its "abortOnFault" property. As a result, subsequent actions in the pipeline were never invoked. This has been fixed in 5.3.+In previous versions, BPELInvoke would block action processing if a BPEL process threw an exception or fault not defined on the WSDL interface. When an invoked BPEL process threw a fault, BPELInvoke blocked it regardless of its "abortOnFault" property. As a result, subsequent actions in the pipeline were never invoked. This has been fixed in 5.3.