Thanks Dushan for the clarification.
On Wed, Jul 2, 2014 at 10:39 PM, Dushan Abeyruwan <[email protected]> wrote: > For soap 1.1 vs soap 1.2 fault there is a clear specification so what ever > web service engine whose executing soap 1.2 or soap 1.1 fault know how to > deal with when it receives faults according. > > SOAP 1.1SOAP 1.2 > > e:Fault > > e:Fault > > faultcode > > e:Code, e:Subcode, e:Value > > faultstring > > e:Reason > > faultactor > > e:Node, e:Role > > detail > > e:Detail > > > > SOAP 1.1SOAP 1.2 > > <e:Fault> > <faultcode>e:Server.Memory</faultcode> > <faultstring>Out of memory</faultstring> > </e:Fault> > > <e:Fault> > <e:Code> > <e:Value>e:Receiver</e:Value> > <e:Subcode> > <e:Value>p:Memory</e:Value> > </e:Subcode> > </e:Code> > <e:Reason>Out of memory</e:Reason> > </e:Fault> > > *Table 2* > > for *POX* fault no specification so we just wrapping around with > <Exception> tag with relevant fault > > > On Thu, Jul 3, 2014 at 7:45 AM, Ishara Premadasa <[email protected]> wrote: > >> Hi all, >> >> Any idea on this. Would be great if i can know the reason for the >> difference here. >> Thanks! >> >> >> On Wed, Jul 2, 2014 at 3:15 AM, Ishara Premadasa <[email protected]> wrote: >> >>> Hi, >>> >>> I used fault mediator with both soap 1.1 and pox format where the format >>> of the generated fault response appeared to be different. With the pox >>> format some elements of the fault message was missing. >>> >>> For e.g: This is the response getting for Soap 1.1 format >>> <soapenv:Envelope xmlns:soapenv=" >>> http://schemas.xmlsoap.org/soap/envelope/"> >>> <soapenv:Body> >>> <soapenv:Fault> >>> <faultcode xmlns:soap11Env=" >>> http://schemas.xmlsoap.org/soap/envelope/ >>> ">soap11Env:VersionMismatch</faultcode> >>> <faultstring>Version Mismatch!!</faultstring> >>> <detail>There is a version mismatch in the input >>> message</detail> >>> </soapenv:Fault> >>> </soapenv:Body> >>> </soapenv:Envelope> >>> >>> This is how it looks like for POX format. >>> <soapenv:Envelope xmlns:soapenv=" >>> http://schemas.xmlsoap.org/soap/envelope/"> >>> <soapenv:Header/> >>> <soapenv:Body> >>> <Exception>There is a version mismatch in the input >>> message</Exception> >>> </soapenv:Body> >>> </soapenv:Envelope> >>> >>> I have two concerns on this. >>> >>> 1. The fault reason, code entries we set in the mediator are ommitted >>> when creating POX fault. >>> 2. For the Pox format it generates an empty <Header> element but in Soap >>> 1.1 that is missing. >>> >>> When debugging the fault mediator i could see the below reasons for this >>> output. >>> >>> 1. When we create POX fault there is an if-else block where it first >>> checks 'faultDetail' and else if goes to 'faultDetailExpr' etc. Therefore >>> when the fault <detail> is there, the other values are ommitted for the >>> fault payload. However when we create SOAP fault all the details are taken >>> and set into SOAPFault object as below. >>> >>> setFaultCode(synCtx, factory, fault, soapVersion); >>> setFaultReason(synCtx, factory, fault, soapVersion); >>> setFaultDetail(synCtx, factory, fault); >>> >>> I would like to know whether there is any specific reason for doing >>> that. IMO there is no harm if we provide all data with the POX fault as >>> well rather than skipping them, since the data are already in the message >>> context. >>> >>> 2. In the POX fault we add the fault payload as a child and replace the >>> <body>. But in SOAP fault the whole envelope is getting replaced with new >>> fault envelope. May be this is why the <soapenv:Header/> is missing there ? >>> >>> Thanks! >>> Ishara >>> -- >>> Ishara Premasada >>> Software Engineer, >>> WSO2 Inc. http://wso2.com/ >>> >>> >>> *Blog : http://isharapremadasa.blogspot.com/ >>> <http://isharapremadasa.blogspot.com/>Twitter : >>> https://twitter.com/ishadil <https://twitter.com/ishadil> Mobile : >>> +94 714445832 <%2B94%20714445832>* >>> >>> >>> >> >> >> -- >> Ishara Premasada >> Software Engineer, >> WSO2 Inc. http://wso2.com/ >> >> >> *Blog : http://isharapremadasa.blogspot.com/ >> <http://isharapremadasa.blogspot.com/>Twitter : >> https://twitter.com/ishadil <https://twitter.com/ishadil> Mobile : >> +94 714445832 <%2B94%20714445832>* >> >> >> > > > -- > Dushan Abeyruwan | Associate Tech Lead > Integration Technologies Team > PMC Member Apache Synpase > WSO2 Inc. http://wso2.com/ > Blog:http://dushansview.blogspot.com/ > Mobile:(0094)713942042 > > -- Ishara Premasada Software Engineer, WSO2 Inc. http://wso2.com/ *Blog : http://isharapremadasa.blogspot.com/ <http://isharapremadasa.blogspot.com/>Twitter : https://twitter.com/ishadil <https://twitter.com/ishadil>Mobile : +94 714445832*
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
