You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Thomas S (JIRA)" <ji...@apache.org> on 2010/11/30 16:24:11 UTC
[jira] Created: (AXIS2C-1507) SOAP Exception fields not available
SOAP Exception fields not available
-----------------------------------
Key: AXIS2C-1507
URL: https://issues.apache.org/jira/browse/AXIS2C-1507
Project: Axis2-C
Issue Type: Bug
Affects Versions: 1.6.0, 1.7.0
Environment: Windows 2003
Reporter: Thomas S
Given a service returning the following (taken from SoapUI output).
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<soap:Fault>
<faultcode xmlns:q0="http://www.cc.com/SoapExceptionService">q0:SoapExceptionService</faultcode>
<faultstring>System.Web.Services.Protocols.SoapException: This is the FaultString
at SoapExceptionService.Service1.HelloWorld(RequestInput ri)</faultstring>
<faultactor>http://www.cc.com/SoapExceptionService</faultactor>
<detail>
<DetailMessage>This is the Detail section</DetailMessage>
</detail>
</soap:Fault>
</soap:Body>
</soap:Envelope>
Using Axis2C (both 1.6 and latest 1.7 code from SVN) only returns a subset of these fields.
Fault Code: (null)
Exception: (null)
Reason: (null)
Role: http://www.cc.com/SoapExceptionService
Detail xml: <detail><DetailMessage>This is the Detail section</DetailMessage></detail>
If I retrieve the fault base node and serialize it I see the whole fault message so Axis has all the data available.
I stepped through function axiom_soap_body_convert_fault_to_soap11() and it appears that the values are found and text elements are created for the missing items but when I try to retrieve them using the axis functions the string values end up being NULL.
Example:
axis2_char_t *strcodevalue = "";
::axiom_soap_fault_code *fcode = ::axiom_soap_fault_get_code(fault, env); // returns ok value
if (fcode) {
::axiom_soap_fault_value *fcodevalue = ::axiom_soap_fault_code_get_value(fcode, env); // returns ok value
if (fcodevalue) {
strcodevalue = ::axiom_soap_fault_value_get_text(fcodevalue, env); // return NULL
}
}
--
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: c-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: c-dev-help@axis.apache.org