[ 
https://issues.apache.org/jira/browse/SYNAPSE-250?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577847#action_12577847
 ] 

Ruwan Linton commented on SYNAPSE-250:
--------------------------------------

I just checked the behavior of Synapse on faults for POX messages, and found 
that what we send as the fault is somewhat like following, which is not wrong 
but contains a SOAPFault without the envelope.

HTTP/1.1 500 Internal Server Error

Content-Type: application/xml; charset=UTF-8

Host: 127.0.0.1

SOAPAction: urn:getQuote

Date: Wed, 12 Mar 2008 13:20:32 GMT

Server: Synapse-HttpComponents-NIO

Transfer-Encoding: chunked



14c

<soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope";>
   <soapenv:Code>
      <soapenv:Value 
xmlns:sf12="http://www.w3.org/2003/05/soap-envelope";>sf12:Receiver</soapenv:Value>
   </soapenv:Code>
   <soapenv:Reason>
      <soapenv:Text>Exception occurred when transforming the 
request/response</soapenv:Text>
   </soapenv:Reason></soapenv:Fault>
0


I think the better way of handling this when it comes to POX is by sending the 
error details enclosed inside an unqualified element named exception with a 
HTTP 500 error.

What would be the fault in REST? should be the same as POX isn't it? 

> Makefault mediator does not handle POX or REST properly
> -------------------------------------------------------
>
>                 Key: SYNAPSE-250
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-250
>             Project: Synapse
>          Issue Type: Bug
>    Affects Versions: 1.1.1
>         Environment: Ubuntu7.04, JDK1.5.0_14
>            Reporter: Evanthika Amarasiri
>            Assignee: Ruwan Linton
>
> Below are the scenarios which were tried out
> Scenario 1 - Sending a POX request
> ======================
> 1. Created a configuration as follows
>    <sequence name="xslt_transfom_sequence" onError="fault">
>         <in>
>             <xslt key="xslt_for_request"/>
>             <send>
>                 <endpoint>
>                     <address 
> uri="http://[host]:[port]/services/[service_name]"/>
>                 </endpoint>
>             </send>
>         </in>
>         <out>
>             <send/>
>         </out>
>     </sequence>
>     <sequence name="fault">
>         <log/>
>         <makefault version="soap12">
>             <code xmlns:sf12="http://www.w3.org/2003/05/soap-envelope"; 
> value="sf12:Receiver"/>
>             <reason value="Exception occurred when transforming the 
> request/response"/>
>         </makefault>
>         <header name="To" action="remove"/>
>         <property name="RESPONSE" value="true"/>
>     </sequence>
> 2. The XSLT file that this configuration is accessing is an invalid XSLT.
> 3. Send a POX request through the client and expect a POX fault but actually 
> it sends a SOAP fault
> Scenario 2 - Sending a REST request
> =======================
> Using the same configuration given above, send a REST request. It sends a 
> SOAP fault and not a fault in REST

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to