You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by Primož Führer <pr...@i-rose.si> on 2006/01/24 10:30:19 UTC
deserialization ??
i'm using web service for login, when i invoke it it creates next request and get response:(As response must return id_usr = 30 ,id_instalacije = 0,jezik = 1)
problem is in deserialization(i think) where gives exception...
acces violation at 0x000005. as it seems the client don't get back values... What could be wrong:
REQUEST
-------------------------
POST /idoc/services/Prijava HTTP/1.1
Host: 192.168.0.210:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
Content-Length: 462
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:checkLogin xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
<username xsi:type="xsd:string">primozf</username>
<pswd xsi:type="xsd:string">primozf</pswd>
</ns1:checkLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
RESPONSE
----------------------------
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Date: Tue, 24 Jan 2006 09:22:14 GMT
Server: Apache Coyote/1.0
3ab
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:UserPrijava" xmlns:ns2="urn:Prijava">
<idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
<idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">30</idUsr>
<jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1</jezik>
<shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"/>
</checkLoginReturn>
</ns1:checkLoginResponse>
</soapenv:Body>
</soapenv:Envelope>
0
Re: deserialization ??
Posted by Primož Führer <pr...@i-rose.si>.
WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
targetNamespace="http://192.168.0.210:8070/idoc/services/Prijava"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://192.168.0.210:8070/idoc/services/Prijava"
xmlns:intf="http://192.168.0.210:8070/idoc/services/Prijava"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns1="urn:Prijava" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.3
Built on Oct 05, 2005 (05:23:37 EDT)-->
<wsdl:types>
<schema targetNamespace="urn:Prijava"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
<complexType name="UserPrijava">
<sequence>
<element name="idInstalacije" nillable="true" type="soapenc:int"/>
<element name="idUsr" nillable="true" type="soapenc:int"/>
<element name="jezik" nillable="true" type="soapenc:int"/>
<element name="shema" nillable="true" type="soapenc:string"/>
</sequence>
</complexType>
</schema>
</wsdl:types>
<wsdl:message name="checkLoginResponse">
<wsdl:part name="checkLoginReturn" type="tns1:UserPrijava"/>
</wsdl:message>
<wsdl:message name="checkLoginRequest">
<wsdl:part name="username" type="soapenc:string"/>
<wsdl:part name="pswd" type="soapenc:string"/>
</wsdl:message>
<wsdl:portType name="Prijava">
<wsdl:operation name="checkLogin" parameterOrder="username pswd">
<wsdl:input message="impl:checkLoginRequest"
name="checkLoginRequest"/>
<wsdl:output message="impl:checkLoginResponse"
name="checkLoginResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="PrijavaSoapBinding" type="impl:Prijava">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="checkLogin">
<wsdlsoap:operation soapAction=""/>
<wsdl:input name="checkLoginRequest">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://axis.idoc.irose.si" use="encoded"/>
</wsdl:input>
<wsdl:output name="checkLoginResponse">
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://192.168.0.210:8070/idoc/services/Prijava" use="encoded"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="PrijavaService">
<wsdl:port binding="impl:PrijavaSoapBinding" name="Prijava">
<wsdlsoap:address
location="http://192.168.0.210:8070/idoc/services/Prijava"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
REQUEST
-------------------------
POST /idoc/services/Prijava HTTP/1.1
Host: 192.168.0.210:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
Content-Length: 462
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:checkLogin xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
<username xsi:type="xsd:string">primozf</username>
<pswd xsi:type="xsd:string">primozf</pswd>
</ns1:checkLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
RESPONSE
----------------------------
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Date: Tue, 24 Jan 2006 09:22:14 GMT
Server: Apache Coyote/1.0
3ab
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:che
ckLoginResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava"><checkLoginRetur
n xsi:type="ns2:UserPrijava" xmlns:ns2="urn:Prijava">
<idInstalacije xsi:type="soapenc:int"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
<idUsr xsi:type="soapenc:int"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">30</idUsr>
<jezik xsi:type="soapenc:int"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1</jezik>
<shema xsi:type="soapenc:string" xsi:nil="true"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"/>
</checkLoginReturn>
</ns1:checkLoginResponse>
</soapenv:Body>
</soapenv:Envelope>
0
----- Original Message -----
From: "Adrian Dick" <ad...@uk.ibm.com>
To: "Apache AXIS C User List" <ax...@ws.apache.org>
Sent: Tuesday, January 24, 2006 3:02 PM
Subject: Re: deserialization ??
> Hi,
>
> As has been suggested, it sounds like the deserializer has returned NULL,
> for a value (based on the code) which cannot be NULL.
> I can see from your SOAP message that a value is present, so something
must
> have happened in the deserializer.
>
> Can you provide the WSDL and SOAP request/responses messages to allow us
to
> further diagnose the cause?
>
>
> Adrian
> _______________________________________
> Adrian Dick (adrian.dick@uk.ibm.com)
>
>
> Tomaž Rotovnik <to...@uni-mb.si> wrote on 24/01/2006 13:39:42:
>
> > Then just first test if p_idInstalacije is NULL (I did so).
> >
> > I beleive that "idInstalacije" should not be null, because you send
> > some value. I think I also have some problems with correct order of
> > sending parameters. In your case you need to have the next order of
> > sending parameters:
> >
> > idInstalacije
> > idUsr
> > jezik
> > shema
> >
> > If you have that order than the problem could be in xsd__int
> > variable. You should check max and min value that can be asigned (I
> > have problems with that also)
> >
> >
> >
> > ----- Original Message -----
> > From: Primož Führer
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:48 AM
> > Subject: Re: deserialization ??
> >
> > The problem occurs just before delete variable, when it tries to set
> > param->idInstalacije = *p_idInstalacije, because p_idInstalacije has
> > value null because of the line :
> > xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt
> >
> > whole method:
> >
> > int Axis_DeSerialize_UserPrijava(UserPrijava* param,
> > IWrapperSoapDeSerializer* pIWSDZ)
> > {
> > try
> > {
> > xsd__int* p_idInstalacije =
> (pIWSDZ->getElementAsInt("idInstalacije",0));
> > param->idInstalacije = *p_idInstalacije; //Error occurs here
> > delete p_idInstalacije;
> > xsd__int* p_idUsr = (pIWSDZ->getElementAsInt("idUsr",0));
> > param->idUsr = *p_idUsr;
> > delete p_idUsr;
> > xsd__int* p_jezik = (pIWSDZ->getElementAsInt("jezik",0));
> > param->jezik = *p_jezik;
> > delete p_jezik;
> > param->shema = pIWSDZ->getElementAsString("shema",0);
> >
> > }
> > ----- Original Message -----
> > From: Tomaž Rotovnik
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:39 AM
> > Subject: Re: deserialization ??
> >
> > Hi
> >
> > The problem is in deleting allocated variables (calling delete or free)
> >
> > The code should also be compiled as Multithreaded or Singlethreaded
> > DLL (run time library options).
> >
> >
> >
> > ----- Original Message -----
> > From: Primož Führer
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:30 AM
> > Subject: deserialization ??
> >
> > i'm using web service for login, when i invoke it it creates next
> > request and get response:(As response must return id_usr = 30 ,
> > id_instalacije = 0,jezik = 1)
> >
> > problem is in deserialization(i think) where gives exception...
> > acces violation at 0x000005. as it seems the client don't get back
> > values... What could be wrong:
> >
> > REQUEST
> > -------------------------
> >
> > POST /idoc/services/Prijava HTTP/1.1
> >
> > Host: 192.168.0.210:8080
> >
> > Content-Type: text/xml; charset=UTF-8
> >
> > SOAPAction: ""
> >
> > Content-Length: 462
> >
> >
> >
> > <?xml version='1.0' encoding='utf-8' ?>
> > <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> > " xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http:
> > //www.w3.org/2001/XMLSchema-instance">
> > <SOAP-ENV:Body>
> > <ns1:checkLogin
> xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
> > <username xsi:type="xsd:string">primozf</username>
> > <pswd xsi:type="xsd:string">primozf</pswd>
> > </ns1:checkLogin>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > RESPONSE
> > ----------------------------
> >
> > HTTP/1.1 200 OK
> >
> > Content-Type: text/xml; charset=utf-8
> >
> > Transfer-Encoding: chunked
> >
> > Date: Tue, 24 Jan 2006 09:22:14 GMT
> >
> > Server: Apache Coyote/1.0
> >
> >
> >
> > 3ab
> >
> > <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="
> > http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.
> > org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
> > "><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http:
> > //schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.
> > 210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:
> > UserPrijava" xmlns:ns2="urn:Prijava">
> > <idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http:
> > //schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
> > <idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> > xmlsoap.org/soap/encoding/">30</idUsr>
> > <jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> > xmlsoap.org/soap/encoding/">1</jezik>
> > <shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="
> > http://schemas.xmlsoap.org/soap/encoding/"/>
> > </checkLoginReturn>
> > </ns1:checkLoginResponse>
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> > 0
> >
> >
> >
> >
> >
> >
> >
> >
Re: deserialization ??
Posted by Primož Führer <pr...@i-rose.si>.
... found out any about deserializating complex object...? :-)
----- Original Message -----
From: "Adrian Dick" <ad...@uk.ibm.com>
To: "Apache AXIS C User List" <ax...@ws.apache.org>
Sent: Tuesday, January 24, 2006 3:02 PM
Subject: Re: deserialization ??
> Hi,
>
> As has been suggested, it sounds like the deserializer has returned NULL,
> for a value (based on the code) which cannot be NULL.
> I can see from your SOAP message that a value is present, so something
must
> have happened in the deserializer.
>
> Can you provide the WSDL and SOAP request/responses messages to allow us
to
> further diagnose the cause?
>
>
> Adrian
> _______________________________________
> Adrian Dick (adrian.dick@uk.ibm.com)
>
>
> Tomaž Rotovnik <to...@uni-mb.si> wrote on 24/01/2006 13:39:42:
>
> > Then just first test if p_idInstalacije is NULL (I did so).
> >
> > I beleive that "idInstalacije" should not be null, because you send
> > some value. I think I also have some problems with correct order of
> > sending parameters. In your case you need to have the next order of
> > sending parameters:
> >
> > idInstalacije
> > idUsr
> > jezik
> > shema
> >
> > If you have that order than the problem could be in xsd__int
> > variable. You should check max and min value that can be asigned (I
> > have problems with that also)
> >
> >
> >
> > ----- Original Message -----
> > From: Primož Führer
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:48 AM
> > Subject: Re: deserialization ??
> >
> > The problem occurs just before delete variable, when it tries to set
> > param->idInstalacije = *p_idInstalacije, because p_idInstalacije has
> > value null because of the line :
> > xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt
> >
> > whole method:
> >
> > int Axis_DeSerialize_UserPrijava(UserPrijava* param,
> > IWrapperSoapDeSerializer* pIWSDZ)
> > {
> > try
> > {
> > xsd__int* p_idInstalacije =
> (pIWSDZ->getElementAsInt("idInstalacije",0));
> > param->idInstalacije = *p_idInstalacije; //Error occurs here
> > delete p_idInstalacije;
> > xsd__int* p_idUsr = (pIWSDZ->getElementAsInt("idUsr",0));
> > param->idUsr = *p_idUsr;
> > delete p_idUsr;
> > xsd__int* p_jezik = (pIWSDZ->getElementAsInt("jezik",0));
> > param->jezik = *p_jezik;
> > delete p_jezik;
> > param->shema = pIWSDZ->getElementAsString("shema",0);
> >
> > }
> > ----- Original Message -----
> > From: Tomaž Rotovnik
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:39 AM
> > Subject: Re: deserialization ??
> >
> > Hi
> >
> > The problem is in deleting allocated variables (calling delete or free)
> >
> > The code should also be compiled as Multithreaded or Singlethreaded
> > DLL (run time library options).
> >
> >
> >
> > ----- Original Message -----
> > From: Primož Führer
> > To: Apache AXIS C User List
> > Sent: Tuesday, January 24, 2006 10:30 AM
> > Subject: deserialization ??
> >
> > i'm using web service for login, when i invoke it it creates next
> > request and get response:(As response must return id_usr = 30 ,
> > id_instalacije = 0,jezik = 1)
> >
> > problem is in deserialization(i think) where gives exception...
> > acces violation at 0x000005. as it seems the client don't get back
> > values... What could be wrong:
> >
> > REQUEST
> > -------------------------
> >
> > POST /idoc/services/Prijava HTTP/1.1
> >
> > Host: 192.168.0.210:8080
> >
> > Content-Type: text/xml; charset=UTF-8
> >
> > SOAPAction: ""
> >
> > Content-Length: 462
> >
> >
> >
> > <?xml version='1.0' encoding='utf-8' ?>
> > <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> > " xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http:
> > //www.w3.org/2001/XMLSchema-instance">
> > <SOAP-ENV:Body>
> > <ns1:checkLogin
> xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
> > <username xsi:type="xsd:string">primozf</username>
> > <pswd xsi:type="xsd:string">primozf</pswd>
> > </ns1:checkLogin>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > RESPONSE
> > ----------------------------
> >
> > HTTP/1.1 200 OK
> >
> > Content-Type: text/xml; charset=utf-8
> >
> > Transfer-Encoding: chunked
> >
> > Date: Tue, 24 Jan 2006 09:22:14 GMT
> >
> > Server: Apache Coyote/1.0
> >
> >
> >
> > 3ab
> >
> > <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="
> > http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.
> > org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
> > "><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http:
> > //schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.
> > 210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:
> > UserPrijava" xmlns:ns2="urn:Prijava">
> > <idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http:
> > //schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
> > <idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> > xmlsoap.org/soap/encoding/">30</idUsr>
> > <jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> > xmlsoap.org/soap/encoding/">1</jezik>
> > <shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="
> > http://schemas.xmlsoap.org/soap/encoding/"/>
> > </checkLoginReturn>
> > </ns1:checkLoginResponse>
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> > 0
> >
> >
> >
> >
> >
> >
> >
> >
Re: deserialization ??
Posted by Adrian Dick <ad...@uk.ibm.com>.
Hi,
As has been suggested, it sounds like the deserializer has returned NULL,
for a value (based on the code) which cannot be NULL.
I can see from your SOAP message that a value is present, so something must
have happened in the deserializer.
Can you provide the WSDL and SOAP request/responses messages to allow us to
further diagnose the cause?
Adrian
_______________________________________
Adrian Dick (adrian.dick@uk.ibm.com)
Tomaž Rotovnik <to...@uni-mb.si> wrote on 24/01/2006 13:39:42:
> Then just first test if p_idInstalacije is NULL (I did so).
>
> I beleive that "idInstalacije" should not be null, because you send
> some value. I think I also have some problems with correct order of
> sending parameters. In your case you need to have the next order of
> sending parameters:
>
> idInstalacije
> idUsr
> jezik
> shema
>
> If you have that order than the problem could be in xsd__int
> variable. You should check max and min value that can be asigned (I
> have problems with that also)
>
>
>
> ----- Original Message -----
> From: Primož Führer
> To: Apache AXIS C User List
> Sent: Tuesday, January 24, 2006 10:48 AM
> Subject: Re: deserialization ??
>
> The problem occurs just before delete variable, when it tries to set
> param->idInstalacije = *p_idInstalacije, because p_idInstalacije has
> value null because of the line :
> xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt
>
> whole method:
>
> int Axis_DeSerialize_UserPrijava(UserPrijava* param,
> IWrapperSoapDeSerializer* pIWSDZ)
> {
> try
> {
> xsd__int* p_idInstalacije =
(pIWSDZ->getElementAsInt("idInstalacije",0));
> param->idInstalacije = *p_idInstalacije; //Error occurs here
> delete p_idInstalacije;
> xsd__int* p_idUsr = (pIWSDZ->getElementAsInt("idUsr",0));
> param->idUsr = *p_idUsr;
> delete p_idUsr;
> xsd__int* p_jezik = (pIWSDZ->getElementAsInt("jezik",0));
> param->jezik = *p_jezik;
> delete p_jezik;
> param->shema = pIWSDZ->getElementAsString("shema",0);
>
> }
> ----- Original Message -----
> From: Tomaž Rotovnik
> To: Apache AXIS C User List
> Sent: Tuesday, January 24, 2006 10:39 AM
> Subject: Re: deserialization ??
>
> Hi
>
> The problem is in deleting allocated variables (calling delete or free)
>
> The code should also be compiled as Multithreaded or Singlethreaded
> DLL (run time library options).
>
>
>
> ----- Original Message -----
> From: Primož Führer
> To: Apache AXIS C User List
> Sent: Tuesday, January 24, 2006 10:30 AM
> Subject: deserialization ??
>
> i'm using web service for login, when i invoke it it creates next
> request and get response:(As response must return id_usr = 30 ,
> id_instalacije = 0,jezik = 1)
>
> problem is in deserialization(i think) where gives exception...
> acces violation at 0x000005. as it seems the client don't get back
> values... What could be wrong:
>
> REQUEST
> -------------------------
>
> POST /idoc/services/Prijava HTTP/1.1
>
> Host: 192.168.0.210:8080
>
> Content-Type: text/xml; charset=UTF-8
>
> SOAPAction: ""
>
> Content-Length: 462
>
>
>
> <?xml version='1.0' encoding='utf-8' ?>
> <SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/
> " xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http:
> //www.w3.org/2001/XMLSchema-instance">
> <SOAP-ENV:Body>
> <ns1:checkLogin
xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
> <username xsi:type="xsd:string">primozf</username>
> <pswd xsi:type="xsd:string">primozf</pswd>
> </ns1:checkLogin>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> RESPONSE
> ----------------------------
>
> HTTP/1.1 200 OK
>
> Content-Type: text/xml; charset=utf-8
>
> Transfer-Encoding: chunked
>
> Date: Tue, 24 Jan 2006 09:22:14 GMT
>
> Server: Apache Coyote/1.0
>
>
>
> 3ab
>
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.
> org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
> "><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http:
> //schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.
> 210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:
> UserPrijava" xmlns:ns2="urn:Prijava">
> <idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http:
> //schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
> <idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> xmlsoap.org/soap/encoding/">30</idUsr>
> <jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.
> xmlsoap.org/soap/encoding/">1</jezik>
> <shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="
> http://schemas.xmlsoap.org/soap/encoding/"/>
> </checkLoginReturn>
> </ns1:checkLoginResponse>
> </soapenv:Body>
> </soapenv:Envelope>
>
> 0
>
>
>
>
>
>
>
>
Re: deserialization ??
Posted by Tomaž Rotovnik <to...@uni-mb.si>.
Then just first test if p_idInstalacije is NULL (I did so).
I beleive that "idInstalacije" should not be null, because you send some value. I think I also have some problems with correct order of sending parameters. In your case you need to have the next order of sending parameters:
idInstalacije
idUsr
jezik
shema
If you have that order than the problem could be in xsd__int variable. You should check max and min value that can be asigned (I have problems with that also)
----- Original Message -----
From: Primož Führer
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:48 AM
Subject: Re: deserialization ??
The problem occurs just before delete variable, when it tries to set param->idInstalacije = *p_idInstalacije, because p_idInstalacije has value null because of the line :
xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt
whole method:
int Axis_DeSerialize_UserPrijava(UserPrijava* param, IWrapperSoapDeSerializer* pIWSDZ)
{
try
{
xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt("idInstalacije",0));
param->idInstalacije = *p_idInstalacije; //Error occurs here
delete p_idInstalacije;
xsd__int* p_idUsr = (pIWSDZ->getElementAsInt("idUsr",0));
param->idUsr = *p_idUsr;
delete p_idUsr;
xsd__int* p_jezik = (pIWSDZ->getElementAsInt("jezik",0));
param->jezik = *p_jezik;
delete p_jezik;
param->shema = pIWSDZ->getElementAsString("shema",0);
}
----- Original Message -----
From: Tomaž Rotovnik
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:39 AM
Subject: Re: deserialization ??
Hi
The problem is in deleting allocated variables (calling delete or free)
The code should also be compiled as Multithreaded or Singlethreaded DLL (run time library options).
----- Original Message -----
From: Primož Führer
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:30 AM
Subject: deserialization ??
i'm using web service for login, when i invoke it it creates next request and get response:(As response must return id_usr = 30 ,id_instalacije = 0,jezik = 1)
problem is in deserialization(i think) where gives exception...
acces violation at 0x000005. as it seems the client don't get back values... What could be wrong:
REQUEST
-------------------------
POST /idoc/services/Prijava HTTP/1.1
Host: 192.168.0.210:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
Content-Length: 462
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:checkLogin xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
<username xsi:type="xsd:string">primozf</username>
<pswd xsi:type="xsd:string">primozf</pswd>
</ns1:checkLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
RESPONSE
----------------------------
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Date: Tue, 24 Jan 2006 09:22:14 GMT
Server: Apache Coyote/1.0
3ab
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:UserPrijava" xmlns:ns2="urn:Prijava">
<idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
<idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">30</idUsr>
<jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1</jezik>
<shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"/>
</checkLoginReturn>
</ns1:checkLoginResponse>
</soapenv:Body>
</soapenv:Envelope>
0
Re: deserialization ??
Posted by Primož Führer <pr...@i-rose.si>.
The problem occurs just before delete variable, when it tries to set param->idInstalacije = *p_idInstalacije, because p_idInstalacije has value null because of the line :
xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt
whole method:
int Axis_DeSerialize_UserPrijava(UserPrijava* param, IWrapperSoapDeSerializer* pIWSDZ)
{
try
{
xsd__int* p_idInstalacije = (pIWSDZ->getElementAsInt("idInstalacije",0));
param->idInstalacije = *p_idInstalacije; //Error occurs here
delete p_idInstalacije;
xsd__int* p_idUsr = (pIWSDZ->getElementAsInt("idUsr",0));
param->idUsr = *p_idUsr;
delete p_idUsr;
xsd__int* p_jezik = (pIWSDZ->getElementAsInt("jezik",0));
param->jezik = *p_jezik;
delete p_jezik;
param->shema = pIWSDZ->getElementAsString("shema",0);
}
----- Original Message -----
From: Tomaž Rotovnik
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:39 AM
Subject: Re: deserialization ??
Hi
The problem is in deleting allocated variables (calling delete or free)
The code should also be compiled as Multithreaded or Singlethreaded DLL (run time library options).
----- Original Message -----
From: Primož Führer
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:30 AM
Subject: deserialization ??
i'm using web service for login, when i invoke it it creates next request and get response:(As response must return id_usr = 30 ,id_instalacije = 0,jezik = 1)
problem is in deserialization(i think) where gives exception...
acces violation at 0x000005. as it seems the client don't get back values... What could be wrong:
REQUEST
-------------------------
POST /idoc/services/Prijava HTTP/1.1
Host: 192.168.0.210:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
Content-Length: 462
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:checkLogin xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
<username xsi:type="xsd:string">primozf</username>
<pswd xsi:type="xsd:string">primozf</pswd>
</ns1:checkLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
RESPONSE
----------------------------
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Date: Tue, 24 Jan 2006 09:22:14 GMT
Server: Apache Coyote/1.0
3ab
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:UserPrijava" xmlns:ns2="urn:Prijava">
<idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
<idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">30</idUsr>
<jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1</jezik>
<shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"/>
</checkLoginReturn>
</ns1:checkLoginResponse>
</soapenv:Body>
</soapenv:Envelope>
0
Re: deserialization ??
Posted by Tomaž Rotovnik <to...@uni-mb.si>.
Hi
The problem is in deleting allocated variables (calling delete or free)
The code should also be compiled as Multithreaded or Singlethreaded DLL (run time library options).
----- Original Message -----
From: Primož Führer
To: Apache AXIS C User List
Sent: Tuesday, January 24, 2006 10:30 AM
Subject: deserialization ??
i'm using web service for login, when i invoke it it creates next request and get response:(As response must return id_usr = 30 ,id_instalacije = 0,jezik = 1)
problem is in deserialization(i think) where gives exception...
acces violation at 0x000005. as it seems the client don't get back values... What could be wrong:
REQUEST
-------------------------
POST /idoc/services/Prijava HTTP/1.1
Host: 192.168.0.210:8080
Content-Type: text/xml; charset=UTF-8
SOAPAction: ""
Content-Length: 462
<?xml version='1.0' encoding='utf-8' ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:checkLogin xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava">
<username xsi:type="xsd:string">primozf</username>
<pswd xsi:type="xsd:string">primozf</pswd>
</ns1:checkLogin>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
RESPONSE
----------------------------
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Transfer-Encoding: chunked
Date: Tue, 24 Jan 2006 09:22:14 GMT
Server: Apache Coyote/1.0
3ab
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><ns1:checkLoginResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://192.168.0.210:8080/idoc/services/Prijava"><checkLoginReturn xsi:type="ns2:UserPrijava" xmlns:ns2="urn:Prijava">
<idInstalacije xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">0</idInstalacije>
<idUsr xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">30</idUsr>
<jezik xsi:type="soapenc:int" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">1</jezik>
<shema xsi:type="soapenc:string" xsi:nil="true" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"/>
</checkLoginReturn>
</ns1:checkLoginResponse>
</soapenv:Body>
</soapenv:Envelope>
0