SoapFault not returned in BPEL as expected

3 messages Options
Embed this post
Permalink
vidhya.praveen

SoapFault not returned in BPEL as expected

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
Hi,
 
We are using Java CAPS 6 Update1.  We are having an issue with BPEL not propagating the same fault that is thrown in the client (EJB in our case). 
 
We are basically trying to implement a fault handler that catches the fault from an ejb service and forwards to the response.  Attached here is a simple POC which we using to get the desired fault back from EJB.   For some reason the BP always says unhandled and does not propogate the fault that the EJB is throwing. 
We have been struggling with this for quite a long time now.  I have looked through all the sample on the web and they don't seem to be helping us.  This is a very very simple expected behaviour of the BPEL in the JBI implementation of Java CAPS 6
 
Can you please help  me understand if there is anything that  I am missing or there is a fix that is associated with implementing the fault handling for JCAPS update 1. 
 
Attachment contains the EJB, BPEL and comp App projects.
 
This is really a show  stopper for us because all our services on the JBI mode requires this fault handling in place.   
 
Appreciate all your help.
 
Thanks,
Vidhya 
 
BPEL Soap Fault - 
 
 
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode xmlns="">SOAP-ENV:Server</faultcode>
      <faultstring xmlns="">BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</faultstring>
      <faultactor xmlns="">sun-bpel-engine</faultactor>
      <detail xmlns="">
        <detailText>BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</detailText>
      </detail>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
 

This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited.



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

attachment0 (224K) Download Attachment
Mark Foster

Re: SoapFault not returned in BPEL as expected

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
Hi Vidhya,

Is this a problem catching a specific fault in BPEL when the EJB is part of the same CA as the BPEL, i.e. this.....

https://glassfish.dev.java.net/issues/show_bug.cgi?id=8685

...if so it is fixed in GF v2.1.1 apparently

Regards
Mark

[hidden email] wrote:
Hi,
 
We are using Java CAPS 6 Update1.  We are having an issue with BPEL not propagating the same fault that is thrown in the client (EJB in our case). 
 
We are basically trying to implement a fault handler that catches the fault from an ejb service and forwards to the response.  Attached here is a simple POC which we using to get the desired fault back from EJB.   For some reason the BP always says unhandled and does not propogate the fault that the EJB is throwing. 
We have been struggling with this for quite a long time now.  I have looked through all the sample on the web and they don't seem to be helping us.  This is a very very simple expected behaviour of the BPEL in the JBI implementation of Java CAPS 6
 
Can you please help  me understand if there is anything that  I am missing or there is a fix that is associated with implementing the fault handling for JCAPS update 1. 
 
Attachment contains the EJB, BPEL and comp App projects.
 
This is really a show  stopper for us because all our services on the JBI mode requires this fault handling in place.   
 
Appreciate all your help.
 
Thanks,
Vidhya 
 
BPEL Soap Fault - 
 
 
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode xmlns="">SOAP-ENV:Server</faultcode>
      <faultstring xmlns="">BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</faultstring>
      <faultactor xmlns="">sun-bpel-engine</faultactor>
      <detail xmlns="">
        <detailText>BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</detailText>
      </detail>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
 

This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited.


--------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]
--------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]
Tarun Puri

Re: SoapFault not returned in BPEL as expected

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
If this is a related to EJB service invocation over the NMR, there are 4 possible options:

1) Get the patch from CAPS support
2) Upgrade your version of GF to 2.1.1
3) Change the wsdl name to the same as the exception element
4) Invoke the EJB service using the SOAP/HTTP BC.  This will return the correct exception naming.  Invoking over the NMR caused an invalid exception to be returned.

HTH
Tarun

Mark Foster wrote:
Hi Vidhya,

Is this a problem catching a specific fault in BPEL when the EJB is part of the same CA as the BPEL, i.e. this.....

https://glassfish.dev.java.net/issues/show_bug.cgi?id=8685

...if so it is fixed in GF v2.1.1 apparently

Regards
Mark

[hidden email] wrote:
Hi,
 
We are using Java CAPS 6 Update1.  We are having an issue with BPEL not propagating the same fault that is thrown in the client (EJB in our case). 
 
We are basically trying to implement a fault handler that catches the fault from an ejb service and forwards to the response.  Attached here is a simple POC which we using to get the desired fault back from EJB.   For some reason the BP always says unhandled and does not propogate the fault that the EJB is throwing. 
We have been struggling with this for quite a long time now.  I have looked through all the sample on the web and they don't seem to be helping us.  This is a very very simple expected behaviour of the BPEL in the JBI implementation of Java CAPS 6
 
Can you please help  me understand if there is anything that  I am missing or there is a fix that is associated with implementing the fault handling for JCAPS update 1. 
 
Attachment contains the EJB, BPEL and comp App projects.
 
This is really a show  stopper for us because all our services on the JBI mode requires this fault handling in place.   
 
Appreciate all your help.
 
Thanks,
Vidhya 
 
BPEL Soap Fault - 
 
 
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode xmlns="">SOAP-ENV:Server</faultcode>
      <faultstring xmlns="">BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</faultstring>
      <faultactor xmlns="">sun-bpel-engine</faultactor>
      <detail xmlns="">
        <detailText>BPCOR-6135:A fault was not handled in the process scope; Fault Name is {http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB}FaultElement; Fault Data is &amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;jbi:message xmlns:jbi=&amp;quot;http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper&amp;quot; xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; name=&amp;quot;FaultElement&amp;quot; type=&amp;quot;msgns:FaultResponse&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&amp;lt;jbi:part&amp;gt;&amp;lt;ns3:FaultElement xmlns:ns2=&amp;quot;http://j2ee.netbeans.org/wsdl/TestEJB/TestEJB&amp;quot; xmlns:ns3=&amp;quot;http://xml.netbeans.org/schema/fault&amp;quot;&amp;gt;&amp;lt;ns3:faultcode&amp;gt;TestCode&amp;lt;/ns3:faultcode&amp;gt;&amp;lt;ns3:faultstring&amp;gt;TestString&amp;lt;/ns3:faultstring&amp;gt;&amp;lt;/ns3:FaultElement&amp;gt;&amp;lt;/jbi:part&amp;gt;&amp;lt;/jbi:message&amp;gt;. Sending errors for the pending requests in the process scope before terminating the process instance</detailText>
      </detail>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
 

This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited.


--------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]
--------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]
--------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email]