Bug 822026

Summary: BPELInvoke blocks the action processing on BPEL process fault
Product: [JBoss] JBoss Enterprise SOA Platform 5 Reporter: Tadayoshi Sato <tasato>
Component: riftsawAssignee: Nobody <nobody>
Status: CLOSED UPSTREAM QA Contact: Ivo Bek <ibek>
Severity: high Docs Contact:
Priority: high    
Version: 5.2.0 GACC: ldimaggi, mbaluch, soa-p-jira
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
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.
Story Points: ---
Clone Of: Environment:
Last Closed: 2025-02-10 03:19:51 UTC Type: Feature Request
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Tadayoshi Sato 2012-05-16 06:07:48 UTC
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.

Comment 1 JBoss JIRA Server 2012-05-16 08:42:37 UTC
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.

Comment 2 JBoss JIRA Server 2012-05-16 12:44:38 UTC
Gary Brown <gary.pi4tech> updated the status of jira RIFTSAW-491 to Resolved

Comment 3 JBoss JIRA Server 2012-05-16 12:44:38 UTC
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.

Comment 4 JBoss JIRA Server 2012-05-16 12:54:32 UTC
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.

Comment 5 Gary Brown 2012-05-16 13:07:22 UTC
Fix is available in riftsaw 2.3.x branch.

Over to PM to decide which version it should go in.

Comment 6 Rick Wagner 2012-05-17 13:47:47 UTC
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

Comment 7 Marek Baluch 2012-06-20 06:58:30 UTC
Hi,

which build of SOA 5.3 is supposed to included this fix? Thanks

Regards
Marek

Comment 8 Gary Brown 2012-06-20 07:22:53 UTC
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

Comment 9 Marek Baluch 2012-06-20 07:33:51 UTC
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

Comment 10 Ivo Bek 2012-06-20 08:09:16 UTC
Verified in JBoss SOA-P 5.3.0.ER4

Comment 11 Suz 2012-06-28 23:35:08 UTC
    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.

Comment 12 Gary Brown 2012-06-29 08:57:01 UTC
    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.

Comment 18 Red Hat Bugzilla 2025-02-10 03:19:51 UTC
This product has been discontinued or is no longer tracked in Red Hat Bugzilla.