Bug 822026 - BPELInvoke blocks the action processing on BPEL process fault
Summary: BPELInvoke blocks the action processing on BPEL process fault
Keywords:
Status: VERIFIED
Alias: None
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: riftsaw
Version: 5.2.0 GA
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: ---
Assignee: Nobody
QA Contact: Ivo Bek
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-05-16 06:07 UTC by Tadayoshi Sato
Modified: 2023-05-15 19:53 UTC (History)
4 users (show)

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.
Clone Of:
Environment:
Last Closed:
Type: Feature Request
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RIFTSAW-491 0 Major Resolved BPELInvoke blocks the action processing on BPEL process fault 2012-11-21 16:33:38 UTC

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.


Note You need to log in before you can comment on or make changes to this bug.