For the above reason we have been putting following whenever the
get_qname is called,
while(current_node &&
axiom_node_get_node_type(current_node, env) != AXIOM_ELEMENT)
{
current_node =
axiom_node_get_next_sibling(current_node, env);
}
if(current_node != NULL)
{
current_element =
(axiom_element_t *)axiom_node_get_data_element(current_node, env);
qname =
axiom_element_get_qname(current_element, env, current_node);
}
You post give impression that there are paths that we have not tracked
and tested. So it would be helpful if you can send the WSDL too,
Thanks
Dimuthu
On Wed, Mar 12, 2008 at 8:15 AM, Dimuthu Gamage <[EMAIL PROTECTED]> wrote:
> Hi Carl,
>
> If you can send us the relevant generated adb_ file it would be easy
> to track the problem.
>
> Thanks
> Dimuthu
>
>
>
> On Wed, Mar 12, 2008 at 12:42 AM, Carl Lefrançois
> <[EMAIL PROTECTED]> wrote:
> > Hi all,
> >
> > After much debugging I have found why an access violation is being caused
> in
> > my WSDL2C-generated code.
> >
> > While processing the following document: (http : // removed due to problems
> > with my emails being flagged as spam)
> >
> > <?xml version='1.0' encoding='UTF-8'?>
> > <soapenv:Envelope xmlns:soapenv="schemas.xmlsoap.org/soap/envelope/">
> > <soapenv:Body>
> > <BrokerInformationResponse
> > xmlns:xsi="www.w3.org/2001/XMLSchema-instance"
> >
> > xmlns="www.axa.ca/BrokerInformationService/1.0/BrokerInformationResponse"
> > xmlns:xsd="www.w3.org/2001/XMLSchema"
> > xmlns:soap="schemas.xmlsoap.org/soap/envelope/">
> > <TrackingNumber>UNKNOWN</TrackingNumber>
> > <Status>
> > <Status xmlns="">ERROR</Status>
> > <Detail xmlns="">
> > <Code>ERROR</Code>
> > <Description>Could not unbind Request from
> > XML!</Description>
> > </Detail>
> > </Status>
> > </BrokerInformationResponse>
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> >
> > During construction of the node tree representing this document, an om_text
> > data element is created to hold the text "ERROR" in the first Status
> > element. This om_text element is then assigned to the data_element member
> > of the axiom_node_t representing the first Status element on the following
> > line:
> >
> > (line 603 of axiom\src\om\om_text.c:)
> > axiom_node_set_data_element((*node), env, om_text);
> >
> > The node_type element of this node is correctly set to 8 (AXIOM_TEXT).
> >
> > however during deserialization in the WSDL2C generated code, the same data
> > element is read into an axiom_element_t * defined as:
> > axiom_element_t *current_element = NULL;
> >
> > in the following line:
> > current_element = axiom_node_get_data_element( current_node, env);
> >
> >
> > followed by a call which attempts to read the string value of
> > (axiom_element_t *)current_element->ns->prefix:
> > qname = axiom_element_get_qname( current_element, env, current_node);
> >
> > which causes an access violation.
> >
> > I would like to help with debugging the WSDL2C tool but my time on this
> > project doesn't allow it at the moment. If the information above isn't
> > detailed enough I'll gladly clarify so the problem can be fixed.
> >
> > Carl
> >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]