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 Raymond Zhou <ra...@yahoo.com> on 2009/03/13 06:51:31 UTC

ACCESS violation - axis2/c code can not handle rampart/c related soapFault?

Hi All,
 
I am using axis2/c Version 1.5 and rampart/c version 1.2 to build a WS client. I built a debug version binaries from source code. When I go through the rampart/c test cases,
I am getting this access violation consistently. It happens only when I made a mistake, for example, using senario 1 services.xml in server side but use senario 2 policy file on the client side, or I send in a wrong password (programmatically). I used tcpmon to track the return message from the server, and as expected, I am getting a soapFault message like the following:
 
HTTP/1.1 500 Internal Server Error
Date: Thu Mar 12 22:40:06 2009 GMT
Server: Axis2C/1.5.0 (Simple Axis2 HTTP Server)
Content-Type: text/xml;charset=UTF-8
Content-Length: 628
<soapenv:Envelope xmlns:soapenv="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><Value>wsse:InvalidSecurityToken</Value></Subcode>soapenv:Sender</faultcode><faultstring>Timestamp should not be in the message </faultstring><detail><wsse:ProblemSecurityHeader xmlns:wsse="


      

Re: ACCESS violation - axis2/c code can not handle rampart/c related soapFault?

Posted by Supun Kamburugamuva <su...@gmail.com>.
Please check weather the client and server policies are matching. It seems
that server doesn't accept time stamp and client generates a time stamp.

Supun

On Fri, Mar 13, 2009 at 10:51 AM, Raymond Zhou <ra...@yahoo.com> wrote:

> Hi All,
>
> I am using axis2/c Version 1.5 and rampart/c version 1.2 to build a WS
> client. I built a debug version binaries from source code. When I go through
> the rampart/c test cases,
> I am getting this access violation consistently. It happens only when I
> made a mistake, for example, using senario 1 services.xml in server side but
> use senario 2 policy file on the client side, or I send in a wrong password
> (programmatically). I used tcpmon to track the return message from the
> server, and as expected, I am getting a soapFault message like the
> following:
>
> HTTP/1.1 500 Internal Server Error
> Date: Thu Mar 12 22:40:06 2009 GMT
> Server: Axis2C/1.5.0 (Simple Axis2 HTTP Server)
> Content-Type: text/xml;charset=UTF-8
> Content-Length: 628
> <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header></soapenv:Header><soapenv:Body><soapenv:Fault><faultcode><Subcode<http://schemas.xmlsoap.org/soap/envelope/%22%3E%3Csoapenv:Header%3E%3C/soapenv:Header%3E%3Csoapenv:Body%3E%3Csoapenv:Fault%3E%3Cfaultcode%3E%3CSubcode>xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"><Value>wsse:InvalidSecurityToken</Value></Subcode>soapenv:Sender</faultcode><faultstring>Timestamp<http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd%22%3E%3CValue%3Ewsse:InvalidSecurityToken%3C/Value%3E%3C/Subcode%3Esoapenv:Sender%3C/faultcode%3E%3Cfaultstring%3ETimestamp>should not be in the message
> </faultstring><detail><wsse:ProblemSecurityHeader xmlns:wsse="
> http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">wsse:Timestamp</wsse:ProblemSecurityHeader></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope<http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd%22%3Ewsse:Timestamp%3C/wsse:ProblemSecurityHeader%3E%3C/detail%3E%3C/soapenv:Fault%3E%3C/soapenv:Body%3E%3C/soapenv:Envelope>
> >
> Now it seems that axis2/c can not handle this soapFault message, I always
> get access violation, here is the stack:
>
> Call stack:
> 001B:03B6A4ED, axiom_node_set_complete()+0061 byte(s),
> c:\axis2c_1.5\axiom\src\o
> m\om_node.c, line 1134+0006 byte(s)
> 001B:03B6D1AF, axiom_stax_builder_end_element()+0095 byte(s),
> c:\axis2c_1.5\axio
> m\src\om\om_stax_builder.c, line 0763
> 001B:03B6D8F1, axiom_stax_builder_next_with_token()+0289 byte(s),
> c:\axis2c_1.5\
> axiom\src\om\om_stax_builder.c, line 1157
> 001B:03B71E0B, axiom_soap_builder_next()+0139 byte(s),
> c:\axis2c_1.5\axiom\src\s
> oap\soap_builder.c, line 0301+0015 byte(s)
> 001B:03B74C21, axiom_soap_fault_get_reason()+0081 byte(s),
> c:\axis2c_1.5\axiom\s
> rc\soap\soap_fault.c, line 0275+0016 byte(s)
> 001B:03B715B6, axiom_soap_body_convert_fault_to_soap11()+0390 byte(s),
> c:\axis2c
> _1.5\axiom\src\soap\soap_body.c, line 0422+0013 byte(s)
> 001B:03BFBDEE, axis2_svc_client_send_receive_with_op_qname()+1358 byte(s),
> c:\ax
> is2c_1.5\src\core\clientapi\svc_client.c, line 0925
> 001B:03BFBE36, axis2_svc_client_send_receive()+0022 byte(s),
> c:\axis2c_1.5\src\c
> ore\clientapi\svc_client.c, line 0941
>
> Is this a known issue or has this bug been fixed?
>
> Thanks much!
> Ray
>
>


-- 
Software Engineer, WSO2 Inc
http://wso2.org
supunk.blogspot.com