Is the fix as suggested is the correct one or is there any thing else 
that needs to be done ?

--- In gsoap@yahoogroups.com, "jemini_fr" <[EMAIL PROTECTED]> wrote:
>
> Hi!
> 
> I'm having the same problem.
> 
> Do you find a method to correct this without changing soap2.cpp ?
> 
> 
> --- In gsoap@yahoogroups.com, "profilesbelame" <denis_bohm@> wrote:
> >
> > I'm having the same problem.
> > 
> > It looks like only the header is parsed and then gsoap creates the
> > fault without parsing the body with the fault details.
> > 
> > At the end of soap2.cpp:http_parse is:
> > 
> >   if (k == 0 || k == 200 || (((k > 200 && k <= 299) || k == 400 
|| k
> > == 500) && ((soap->mode & SOAP_IO) == SOAP_IO_CHUNK || soap-
>length
> > 0)))
> >     return SOAP_OK;
> >   DBGLOG(TEST,SOAP_MESSAGE(fdebug, "HTTP error %d\n", k));
> >   return soap_set_receiver_error(soap, "HTTP Error", soap-
>msgbuf, k);
> > 
> > It looks like k is 500 and soap->length is 0.  If I change the 
test
> > for soap length to >= rather than > then I do get the fault parsed
> > properly.  However, I have no idea what that soap length test is 
for
> > and if that is a proper fix.
> > 
> > Anyone else know?
> > 
> > --- In gsoap@yahoogroups.com, "sarbx" <sarbx@> wrote:
> > >
> > > Hello,
> > > 
> > > Only today I started to use gSOAP. After having painful 
experiences 
> > > with axisc and axis2c over the last couple of weeks, working 
with 
> > > gSOAP has been a pleasure so far.
> > > 
> > > I'm having some problems in getting the proper error on Client 
side. 
> > > The soap server (Tomcat/Apache Axis) sends the following 
response 
> > > when there is a exception,
> > > 
> > > HTTP/1.1 500 Internal Server Error
> > > Server: Apache-Coyote/1.1
> > > Content-Type: text/xml;charset=utf-8
> > > Date: Thu, 15 Feb 2007 03:18:37 GMT
> > > Connection: close
> > > <?xml version="1.0" encoding="utf-8"?>
> > > ....
> > >  <soapenv:Body>
> > >   <soapenv:Fault>
> > >    <faultcode>soapenv:Server.userException</faultcode>
> > >    <faultstring>Application Error Message </faultstring>
> > >    <detail>
> > >       <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/";>
> > >        burn1</ns1:hostname>
> > >    </detail>
> > >   </soapenv:Fault>
> > >  </soapenv:Body>
> > > ....
> > > 
> > > So it send a HTTP 500 error. 
> > > When the client gets the response, I only see the HTTP fault in 
the 
> > > soap_fault and the application fault string is lost. So when I 
do 
> > > soap_print_fault, I get only the following,
> > > 
> > > Error 500 fault: SOAP-ENV:Server [no subcode]
> > > "HTTP Error"
> > > Detail: HTTP/1.1 500 Internal Server Error
> > > 
> > > What should I do get the message in the faultString 
<soapenv:Fault>
> > > 
> > > I saw some previous posts related to similar problem, but there 
was 
> > > no solution.
> > > 
> > > 
> > > Thanks,
> > >
> >
>


Reply via email to