You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@xml.apache.org by Houman Moshtagh <de...@yahoo.de> on 2002/08/08 14:20:35 UTC
The Final step ?
Hello all,
Finally I could make an almost working Java Client which invoke a Call
to MS Web Service. :)
The result is just a hello world string and I can already see the
wonderful SOAP Body in my TCP Monitor.
Here it is:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
- <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
- <SOAP-ENV:Body
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
- <SOAPSDK4:testResponse
xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
<Result>HELLO WORLD</Result>
</SOAPSDK4:testResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Everything should be fine, but I get a SOAP Exception, that it can not
deserialize the <Result>HELLO WORLD</Result>.
It is terrific. :(
[SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to
deserialize a ':Result' using encoding style
'http://schemas.xmlsoap.org/soap/encoding/'.;
targetException=java.lang.IllegalArgumentException: No Deserializer
found to deserialize a ':Result ' using encoding style
'http://schemas.xmlsoap.org/soap/encoding/'.]
I don't want it to deserialize the return value. I want to catch it
myself with response.getReturnValue().getValue()
How can I force SOAP stopping to help me? :)
Thanks for any help,
Houman
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Yahoo! pr�sentiert als offizieller Sponsor das Fu�ball-Highlight des
Jahres: - http://www.FIFAworldcup.com
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
AW: AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi John,
No Problem. :)
I always thought using MS Client and Apache Server would be less
complicated, since Apache Server has more capabilities than MS Server.
But good to know that none combination is easy. :)
Greetings
Houman
-----Ursprüngliche Nachricht-----
Von: John Thomas [mailto:jthomas@segue.biz]
Gesendet: Donnerstag, 8. August 2002 19:51
An: soap-user@xml.apache.org
Betreff: Re: AW: The Final step ?
Sorry Houman,
My bad. I got all excited when thought I could offer assistance to
someone experiencing the same level of frustration I experienced dealing
with type mapping issues between Apache and MS. I didn't read the fact
that you are using Java on the client side and MS on the server side.
The isd:mapping solution is relevant to server side Apache. I haven't
dealt with it on the client side.
My apologies,
JT
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
AW: AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi John,
No Problem. :)
I always thought using MS Client and Apache Server would be less
complicated, since Apache Server has more capabilities than MS Server.
But good to know that none combination is easy. :)
Greetings
Houman
-----Ursprüngliche Nachricht-----
Von: John Thomas [mailto:jthomas@segue.biz]
Gesendet: Donnerstag, 8. August 2002 19:51
An: soap-user@xml.apache.org
Betreff: Re: AW: The Final step ?
Sorry Houman,
My bad. I got all excited when thought I could offer assistance to
someone experiencing the same level of frustration I experienced dealing
with type mapping issues between Apache and MS. I didn't read the fact
that you are using Java on the client side and MS on the server side.
The isd:mapping solution is relevant to server side Apache. I haven't
dealt with it on the client side.
My apologies,
JT
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
Re: AW: The Final step ?
Posted by John Thomas <jt...@segue.biz>.
Sorry Houman,
My bad. I got all excited when thought I could offer assistance to someone
experiencing the same level of frustration I experienced dealing with type
mapping issues between Apache and MS. I didn't read the fact that you are
using Java on the client side and MS on the server side. The isd:mapping
solution is relevant to server side Apache. I haven't dealt with it on the
client side.
My apologies,
JT
Houman Moshtagh wrote:
> Hi John,
>
> The idea of isd:mapping seems to be very interesting. But somehow I
> didnt understand what exactly you mean. Do you make these changes on
> the Web Service? Or maybe on the WSDL file of the Web Service? I think
> the most effective way is to let the MS Webservice as it is (since it is
> automatically generated) and try to manage the Java client. But I dont
> know how. :o)
>
> Regards
> Houman
>
> -----Ursprüngliche Nachricht-----
> Von: John Thomas [mailto:jthomas@segue.biz]
> Gesendet: Donnerstag, 8. August 2002 17:46
> An: soap-user@xml.apache.org
> Betreff: Re: The Final step ?
>
>
> We had a similar experience with Apache and PocketSoap
> www.pocketSoap.com. We were able to overcome the problem caused by the
> lack of a xsi:type attribute with a isd:mapping entry.
> <isd:mappings>
> <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:x="urn:CustomerDownloadService"
> qname="x:CustomerWrapper"
> javaType="com.segue.customer.wrapper.CustomerWrapper"
>
> java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
>
> xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
> </isd:mappings>
>
> Irene Moser wrote:
> Hello Houman,
> I have tried exactly the same, calling an MS service with Apache SOAP. I
>
> got fed up and started using Axis. Maybe you are smarter or more patient
>
> and find a solution to this ;))
> It seems Apache SOAP does not understand SOAP values without the
> xsi:type attribute. MS never sends these. One way to overcome this is to
>
> register a serialiser for the value you are about to receive, like this:
>
> StringDeserializer stringdeserialiser = new StringDeserializer();
> registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
> "Result"), String.class, null,
> stringdeserialiser);
> call.setSOAPMappingRegistry(registry);
> It fixed my problem, but it caused a different one. Try it.
> Irene
> Houman Moshtagh wrote:
> >
> > Hello all,
> >
> > Finally I could make an almost working Java Client which invoke a Call
>
> > to MS Web Service. :)
> >
> > The result is just a hello world string and I can already see the
> > wonderful SOAP Body in my TCP Monitor.
> >
> > Here it is:
> >
> > <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> > - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
>
> > xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> > xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> > - <SOAP-ENV:Body
> > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> > - <SOAPSDK4:testResponse
> > xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> > <Result>HELLO WORLD</Result>
> > </SOAPSDK4:testResponse>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > Everything should be fine, but I get a SOAP Exception, that it can not
>
> > deserialize the <Result>HELLO WORLD</Result>.
> > It is terrific. :(
> >
> > [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found
> to
> > deserialize a ':Result' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.;
> > targetException=java.lang.IllegalArgumentException: No Deserializer
> > found to deserialize a ':Result ' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.]
> >
> > I don't want it to deserialize the return value. I want to catch it
> > myself with response.getReturnValue().getValue()
> > How can I force SOAP stopping to help me? :)
> >
> > Thanks for any help,
> > Houman
> >
> > __________________________________________________________________
> >
> > Gesendet von Yahoo! Mail - http://mail.yahoo.de
> > Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> > Jahres: - http://www.FIFAworldcup.com
> >
> > --
> > To unsubscribe, e-mail:
> <ma...@xml.apache.org>
> > For additional commands, e-mail:
> <ma...@xml.apache.org>
> --
> ******************************************************
> Irene Moser, System Analyst, Technologies Team
> AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
> Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
> e-mail: irene.moser@atbusiness.com
> ******************************************************
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
Re: AW: The Final step ?
Posted by John Thomas <jt...@segue.biz>.
Sorry Houman,
My bad. I got all excited when thought I could offer assistance to someone
experiencing the same level of frustration I experienced dealing with type
mapping issues between Apache and MS. I didn't read the fact that you are
using Java on the client side and MS on the server side. The isd:mapping
solution is relevant to server side Apache. I haven't dealt with it on the
client side.
My apologies,
JT
Houman Moshtagh wrote:
> Hi John,
>
> The idea of isd:mapping seems to be very interesting. But somehow I
> didnt understand what exactly you mean. Do you make these changes on
> the Web Service? Or maybe on the WSDL file of the Web Service? I think
> the most effective way is to let the MS Webservice as it is (since it is
> automatically generated) and try to manage the Java client. But I dont
> know how. :o)
>
> Regards
> Houman
>
> -----Ursprüngliche Nachricht-----
> Von: John Thomas [mailto:jthomas@segue.biz]
> Gesendet: Donnerstag, 8. August 2002 17:46
> An: soap-user@xml.apache.org
> Betreff: Re: The Final step ?
>
>
> We had a similar experience with Apache and PocketSoap
> www.pocketSoap.com. We were able to overcome the problem caused by the
> lack of a xsi:type attribute with a isd:mapping entry.
> <isd:mappings>
> <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:x="urn:CustomerDownloadService"
> qname="x:CustomerWrapper"
> javaType="com.segue.customer.wrapper.CustomerWrapper"
>
> java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
>
> xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
> </isd:mappings>
>
> Irene Moser wrote:
> Hello Houman,
> I have tried exactly the same, calling an MS service with Apache SOAP. I
>
> got fed up and started using Axis. Maybe you are smarter or more patient
>
> and find a solution to this ;))
> It seems Apache SOAP does not understand SOAP values without the
> xsi:type attribute. MS never sends these. One way to overcome this is to
>
> register a serialiser for the value you are about to receive, like this:
>
> StringDeserializer stringdeserialiser = new StringDeserializer();
> registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
> "Result"), String.class, null,
> stringdeserialiser);
> call.setSOAPMappingRegistry(registry);
> It fixed my problem, but it caused a different one. Try it.
> Irene
> Houman Moshtagh wrote:
> >
> > Hello all,
> >
> > Finally I could make an almost working Java Client which invoke a Call
>
> > to MS Web Service. :)
> >
> > The result is just a hello world string and I can already see the
> > wonderful SOAP Body in my TCP Monitor.
> >
> > Here it is:
> >
> > <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> > - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
>
> > xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> > xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> > - <SOAP-ENV:Body
> > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> > - <SOAPSDK4:testResponse
> > xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> > <Result>HELLO WORLD</Result>
> > </SOAPSDK4:testResponse>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > Everything should be fine, but I get a SOAP Exception, that it can not
>
> > deserialize the <Result>HELLO WORLD</Result>.
> > It is terrific. :(
> >
> > [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found
> to
> > deserialize a ':Result' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.;
> > targetException=java.lang.IllegalArgumentException: No Deserializer
> > found to deserialize a ':Result ' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.]
> >
> > I don't want it to deserialize the return value. I want to catch it
> > myself with response.getReturnValue().getValue()
> > How can I force SOAP stopping to help me? :)
> >
> > Thanks for any help,
> > Houman
> >
> > __________________________________________________________________
> >
> > Gesendet von Yahoo! Mail - http://mail.yahoo.de
> > Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> > Jahres: - http://www.FIFAworldcup.com
> >
> > --
> > To unsubscribe, e-mail:
> <ma...@xml.apache.org>
> > For additional commands, e-mail:
> <ma...@xml.apache.org>
> --
> ******************************************************
> Irene Moser, System Analyst, Technologies Team
> AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
> Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
> e-mail: irene.moser@atbusiness.com
> ******************************************************
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi John,
The idea of isd:mapping seems to be very interesting. But somehow I
didnt understand what exactly you mean. Do you make these changes on
the Web Service? Or maybe on the WSDL file of the Web Service? I think
the most effective way is to let the MS Webservice as it is (since it is
automatically generated) and try to manage the Java client. But I dont
know how. :o)
Regards
Houman
-----Ursprüngliche Nachricht-----
Von: John Thomas [mailto:jthomas@segue.biz]
Gesendet: Donnerstag, 8. August 2002 17:46
An: soap-user@xml.apache.org
Betreff: Re: The Final step ?
We had a similar experience with Apache and PocketSoap
www.pocketSoap.com. We were able to overcome the problem caused by the
lack of a xsi:type attribute with a isd:mapping entry.
<isd:mappings>
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:x="urn:CustomerDownloadService"
qname="x:CustomerWrapper"
javaType="com.segue.customer.wrapper.CustomerWrapper"
java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
</isd:mappings>
Irene Moser wrote:
Hello Houman,
I have tried exactly the same, calling an MS service with Apache SOAP. I
got fed up and started using Axis. Maybe you are smarter or more patient
and find a solution to this ;))
It seems Apache SOAP does not understand SOAP values without the
xsi:type attribute. MS never sends these. One way to overcome this is to
register a serialiser for the value you are about to receive, like this:
StringDeserializer stringdeserialiser = new StringDeserializer();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
"Result"), String.class, null,
stringdeserialiser);
call.setSOAPMappingRegistry(registry);
It fixed my problem, but it caused a different one. Try it.
Irene
Houman Moshtagh wrote:
>
> Hello all,
>
> Finally I could make an almost working Java Client which invoke a Call
> to MS Web Service. :)
>
> The result is just a hello world string and I can already see the
> wonderful SOAP Body in my TCP Monitor.
>
> Here it is:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> - <SOAP-ENV:Body
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> - <SOAPSDK4:testResponse
> xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> <Result>HELLO WORLD</Result>
> </SOAPSDK4:testResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> Everything should be fine, but I get a SOAP Exception, that it can not
> deserialize the <Result>HELLO WORLD</Result>.
> It is terrific. :(
>
> [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found
to
> deserialize a ':Result' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.;
> targetException=java.lang.IllegalArgumentException: No Deserializer
> found to deserialize a ':Result ' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.]
>
> I don't want it to deserialize the return value. I want to catch it
> myself with response.getReturnValue().getValue()
> How can I force SOAP stopping to help me? :)
>
> Thanks for any help,
> Houman
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> Jahres: - http://www.FIFAworldcup.com
>
> --
> To unsubscribe, e-mail:
<ma...@xml.apache.org>
> For additional commands, e-mail:
<ma...@xml.apache.org>
--
******************************************************
Irene Moser, System Analyst, Technologies Team
AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
e-mail: irene.moser@atbusiness.com
******************************************************
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi John,
The idea of isd:mapping seems to be very interesting. But somehow I
didnt understand what exactly you mean. Do you make these changes on
the Web Service? Or maybe on the WSDL file of the Web Service? I think
the most effective way is to let the MS Webservice as it is (since it is
automatically generated) and try to manage the Java client. But I dont
know how. :o)
Regards
Houman
-----Ursprüngliche Nachricht-----
Von: John Thomas [mailto:jthomas@segue.biz]
Gesendet: Donnerstag, 8. August 2002 17:46
An: soap-user@xml.apache.org
Betreff: Re: The Final step ?
We had a similar experience with Apache and PocketSoap
www.pocketSoap.com. We were able to overcome the problem caused by the
lack of a xsi:type attribute with a isd:mapping entry.
<isd:mappings>
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:x="urn:CustomerDownloadService"
qname="x:CustomerWrapper"
javaType="com.segue.customer.wrapper.CustomerWrapper"
java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
</isd:mappings>
Irene Moser wrote:
Hello Houman,
I have tried exactly the same, calling an MS service with Apache SOAP. I
got fed up and started using Axis. Maybe you are smarter or more patient
and find a solution to this ;))
It seems Apache SOAP does not understand SOAP values without the
xsi:type attribute. MS never sends these. One way to overcome this is to
register a serialiser for the value you are about to receive, like this:
StringDeserializer stringdeserialiser = new StringDeserializer();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
"Result"), String.class, null,
stringdeserialiser);
call.setSOAPMappingRegistry(registry);
It fixed my problem, but it caused a different one. Try it.
Irene
Houman Moshtagh wrote:
>
> Hello all,
>
> Finally I could make an almost working Java Client which invoke a Call
> to MS Web Service. :)
>
> The result is just a hello world string and I can already see the
> wonderful SOAP Body in my TCP Monitor.
>
> Here it is:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> - <SOAP-ENV:Body
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> - <SOAPSDK4:testResponse
> xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> <Result>HELLO WORLD</Result>
> </SOAPSDK4:testResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> Everything should be fine, but I get a SOAP Exception, that it can not
> deserialize the <Result>HELLO WORLD</Result>.
> It is terrific. :(
>
> [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found
to
> deserialize a ':Result' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.;
> targetException=java.lang.IllegalArgumentException: No Deserializer
> found to deserialize a ':Result ' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.]
>
> I don't want it to deserialize the return value. I want to catch it
> myself with response.getReturnValue().getValue()
> How can I force SOAP stopping to help me? :)
>
> Thanks for any help,
> Houman
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> Jahres: - http://www.FIFAworldcup.com
>
> --
> To unsubscribe, e-mail:
<ma...@xml.apache.org>
> For additional commands, e-mail:
<ma...@xml.apache.org>
--
******************************************************
Irene Moser, System Analyst, Technologies Team
AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
e-mail: irene.moser@atbusiness.com
******************************************************
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Möchten Sie mit einem Gruß antworten? http://grusskarten.yahoo.de
Re: The Final step ?
Posted by John Thomas <jt...@segue.biz>.
We had a similar experience with Apache and PocketSoap www.pocketSoap.com. We were able to
overcome the problem caused by the lack of a xsi:type attribute with a isd:mapping entry.
<isd:mappings>
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:x="urn:CustomerDownloadService" qname="x:CustomerWrapper"
javaType="com.segue.customer.wrapper.CustomerWrapper"
java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
</isd:mappings>
Irene Moser wrote:
> Hello Houman,
>
> I have tried exactly the same, calling an MS service with Apache SOAP. I
> got fed up and started using Axis. Maybe you are smarter or more patient
> and find a solution to this ;))
>
> It seems Apache SOAP does not understand SOAP values without the
> xsi:type attribute. MS never sends these. One way to overcome this is to
> register a serialiser for the value you are about to receive, like this:
>
> StringDeserializer stringdeserialiser = new StringDeserializer();
> registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
> "Result"), String.class, null, stringdeserialiser);
> call.setSOAPMappingRegistry(registry);
>
> It fixed my problem, but it caused a different one. Try it.
>
> Irene
>
> Houman Moshtagh wrote:
> >
> > Hello all,
> >
> > Finally I could make an almost working Java Client which invoke a Call
> > to MS Web Service. :)
> >
> > The result is just a hello world string and I can already see the
> > wonderful SOAP Body in my TCP Monitor.
> >
> > Here it is:
> >
> > <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> > - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> > xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> > xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> > - <SOAP-ENV:Body
> > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> > - <SOAPSDK4:testResponse
> > xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> > <Result>HELLO WORLD</Result>
> > </SOAPSDK4:testResponse>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > Everything should be fine, but I get a SOAP Exception, that it can not
> > deserialize the <Result>HELLO WORLD</Result>.
> > It is terrific. :(
> >
> > [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to
> > deserialize a ':Result' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.;
> > targetException=java.lang.IllegalArgumentException: No Deserializer
> > found to deserialize a ':Result ' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.]
> >
> > I don't want it to deserialize the return value. I want to catch it
> > myself with response.getReturnValue().getValue()
> > How can I force SOAP stopping to help me? :)
> >
> > Thanks for any help,
> > Houman
> >
> > __________________________________________________________________
> >
> > Gesendet von Yahoo! Mail - http://mail.yahoo.de
> > Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> > Jahres: - http://www.FIFAworldcup.com
> >
> > --
> > To unsubscribe, e-mail: <ma...@xml.apache.org>
> > For additional commands, e-mail: <ma...@xml.apache.org>
>
> --
> ******************************************************
> Irene Moser, System Analyst, Technologies Team
> AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
> Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
> e-mail: irene.moser@atbusiness.com
> ******************************************************
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
Re: The Final step ?
Posted by John Thomas <jt...@segue.biz>.
We had a similar experience with Apache and PocketSoap www.pocketSoap.com. We were able to
overcome the problem caused by the lack of a xsi:type attribute with a isd:mapping entry.
<isd:mappings>
<isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:x="urn:CustomerDownloadService" qname="x:CustomerWrapper"
javaType="com.segue.customer.wrapper.CustomerWrapper"
java2XMLClassName="org.apache.soap.encoding.soapenc.BeanSerializer"
xml2JavaClassName="org.apache.soap.encoding.soapenc.BeanSerializer" />
</isd:mappings>
Irene Moser wrote:
> Hello Houman,
>
> I have tried exactly the same, calling an MS service with Apache SOAP. I
> got fed up and started using Axis. Maybe you are smarter or more patient
> and find a solution to this ;))
>
> It seems Apache SOAP does not understand SOAP values without the
> xsi:type attribute. MS never sends these. One way to overcome this is to
> register a serialiser for the value you are about to receive, like this:
>
> StringDeserializer stringdeserialiser = new StringDeserializer();
> registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
> "Result"), String.class, null, stringdeserialiser);
> call.setSOAPMappingRegistry(registry);
>
> It fixed my problem, but it caused a different one. Try it.
>
> Irene
>
> Houman Moshtagh wrote:
> >
> > Hello all,
> >
> > Finally I could make an almost working Java Client which invoke a Call
> > to MS Web Service. :)
> >
> > The result is just a hello world string and I can already see the
> > wonderful SOAP Body in my TCP Monitor.
> >
> > Here it is:
> >
> > <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> > - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> > xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> > xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> > - <SOAP-ENV:Body
> > SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> > - <SOAPSDK4:testResponse
> > xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> > <Result>HELLO WORLD</Result>
> > </SOAPSDK4:testResponse>
> > </SOAP-ENV:Body>
> > </SOAP-ENV:Envelope>
> >
> > Everything should be fine, but I get a SOAP Exception, that it can not
> > deserialize the <Result>HELLO WORLD</Result>.
> > It is terrific. :(
> >
> > [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to
> > deserialize a ':Result' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.;
> > targetException=java.lang.IllegalArgumentException: No Deserializer
> > found to deserialize a ':Result ' using encoding style
> > 'http://schemas.xmlsoap.org/soap/encoding/'.]
> >
> > I don't want it to deserialize the return value. I want to catch it
> > myself with response.getReturnValue().getValue()
> > How can I force SOAP stopping to help me? :)
> >
> > Thanks for any help,
> > Houman
> >
> > __________________________________________________________________
> >
> > Gesendet von Yahoo! Mail - http://mail.yahoo.de
> > Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> > Jahres: - http://www.FIFAworldcup.com
> >
> > --
> > To unsubscribe, e-mail: <ma...@xml.apache.org>
> > For additional commands, e-mail: <ma...@xml.apache.org>
>
> --
> ******************************************************
> Irene Moser, System Analyst, Technologies Team
> AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
> Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
> e-mail: irene.moser@atbusiness.com
> ******************************************************
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi Irene,
Do you use also a Java Client calling a MS Service? At the end I could
find someone. :) Honestly most people I've met use Java Client with
TomCat or MS Client with MS Service and I know only few people who use
MS Client and Java Service like TomCat. You are the first one who does
the same like me. *wink* :o)
I have tried your suggestion. But somehow nothing changed. Maybe I've
written the code in the wrong order in the Client. Could you take a
quick look on this please?
String
wsdl="http://localhost:8020/soap3docsamples/test/server/ProjectTest.WSDL
";
URL url=new URL(wsdl);
Call call=new Call();
call.setTargetObjectURI("http://tempuri.org/ProjectTest/message/");
call.setMethodName("test");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
StringDeserializer stringdeserialiser = new StringDeserializer();
SOAPMappingRegistry registry=new SOAPMappingRegistry();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName
("http://tempuri.org/ProjectTest/message/","Result"), String.class,
null, stringdeserialiser);
call.setSOAPMappingRegistry(registry);
Response response;
response=call.invoke(url,"http://tempuri.org/ProjectTest/action/SoapTest
.test");
System.out.println(response.getReturnValue().getName());
Besides, you've said you would use Axis instead of Apache Soap. Is it
possible in Axis to make a Client where I can parse the Body of the SOAP
like this?
response.getReturnValue().getName());
response.getReturnValue().getValue());
Or is Axis limited to deserialize just the method on the Web Service?
I mean I need more freedom to do what I wish with the body of SOAP. My
intention is at end to send a NodeList like this one to my Java Client:
<Recordset>
<Data1>
<Name>Houman</Name>
<Sex>Male</Sex>
</Data1>
<Data2>
<Name>Pamela</Name>
<Sex>Female</Sex>
</Data2>
<Recordset>
And it should be able to parse all of these data. Maybe I could use
org.w3c.dom.NodeList. Let's see.
Greetings
Houman
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Yahoo! pr�sentiert als offizieller Sponsor das Fu�ball-Highlight des
Jahres: - http://www.FIFAworldcup.com
AW: The Final step ?
Posted by Houman Moshtagh <de...@yahoo.de>.
Hi Irene,
Do you use also a Java Client calling a MS Service? At the end I could
find someone. :) Honestly most people I've met use Java Client with
TomCat or MS Client with MS Service and I know only few people who use
MS Client and Java Service like TomCat. You are the first one who does
the same like me. *wink* :o)
I have tried your suggestion. But somehow nothing changed. Maybe I've
written the code in the wrong order in the Client. Could you take a
quick look on this please?
String
wsdl="http://localhost:8020/soap3docsamples/test/server/ProjectTest.WSDL
";
URL url=new URL(wsdl);
Call call=new Call();
call.setTargetObjectURI("http://tempuri.org/ProjectTest/message/");
call.setMethodName("test");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
StringDeserializer stringdeserialiser = new StringDeserializer();
SOAPMappingRegistry registry=new SOAPMappingRegistry();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName
("http://tempuri.org/ProjectTest/message/","Result"), String.class,
null, stringdeserialiser);
call.setSOAPMappingRegistry(registry);
Response response;
response=call.invoke(url,"http://tempuri.org/ProjectTest/action/SoapTest
.test");
System.out.println(response.getReturnValue().getName());
Besides, you've said you would use Axis instead of Apache Soap. Is it
possible in Axis to make a Client where I can parse the Body of the SOAP
like this?
response.getReturnValue().getName());
response.getReturnValue().getValue());
Or is Axis limited to deserialize just the method on the Web Service?
I mean I need more freedom to do what I wish with the body of SOAP. My
intention is at end to send a NodeList like this one to my Java Client:
<Recordset>
<Data1>
<Name>Houman</Name>
<Sex>Male</Sex>
</Data1>
<Data2>
<Name>Pamela</Name>
<Sex>Female</Sex>
</Data2>
<Recordset>
And it should be able to parse all of these data. Maybe I could use
org.w3c.dom.NodeList. Let's see.
Greetings
Houman
__________________________________________________________________
Gesendet von Yahoo! Mail - http://mail.yahoo.de
Yahoo! pr�sentiert als offizieller Sponsor das Fu�ball-Highlight des
Jahres: - http://www.FIFAworldcup.com
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
Re: The Final step ?
Posted by Irene Moser <ir...@atbusiness.com>.
Hello Houman,
I have tried exactly the same, calling an MS service with Apache SOAP. I
got fed up and started using Axis. Maybe you are smarter or more patient
and find a solution to this ;))
It seems Apache SOAP does not understand SOAP values without the
xsi:type attribute. MS never sends these. One way to overcome this is to
register a serialiser for the value you are about to receive, like this:
StringDeserializer stringdeserialiser = new StringDeserializer();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
"Result"), String.class, null, stringdeserialiser);
call.setSOAPMappingRegistry(registry);
It fixed my problem, but it caused a different one. Try it.
Irene
Houman Moshtagh wrote:
>
> Hello all,
>
> Finally I could make an almost working Java Client which invoke a Call
> to MS Web Service. :)
>
> The result is just a hello world string and I can already see the
> wonderful SOAP Body in my TCP Monitor.
>
> Here it is:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> - <SOAP-ENV:Body
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> - <SOAPSDK4:testResponse
> xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> <Result>HELLO WORLD</Result>
> </SOAPSDK4:testResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> Everything should be fine, but I get a SOAP Exception, that it can not
> deserialize the <Result>HELLO WORLD</Result>.
> It is terrific. :(
>
> [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to
> deserialize a ':Result' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.;
> targetException=java.lang.IllegalArgumentException: No Deserializer
> found to deserialize a ':Result ' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.]
>
> I don't want it to deserialize the return value. I want to catch it
> myself with response.getReturnValue().getValue()
> How can I force SOAP stopping to help me? :)
>
> Thanks for any help,
> Houman
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> Jahres: - http://www.FIFAworldcup.com
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
--
******************************************************
Irene Moser, System Analyst, Technologies Team
AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
e-mail: irene.moser@atbusiness.com
******************************************************
--
To unsubscribe, e-mail: <ma...@xml.apache.org>
For additional commands, e-mail: <ma...@xml.apache.org>
Re: The Final step ?
Posted by Irene Moser <ir...@atbusiness.com>.
Hello Houman,
I have tried exactly the same, calling an MS service with Apache SOAP. I
got fed up and started using Axis. Maybe you are smarter or more patient
and find a solution to this ;))
It seems Apache SOAP does not understand SOAP values without the
xsi:type attribute. MS never sends these. One way to overcome this is to
register a serialiser for the value you are about to receive, like this:
StringDeserializer stringdeserialiser = new StringDeserializer();
registry.mapTypes(Constants.NS_URI_SOAP_ENC, new QName ("http://....",
"Result"), String.class, null, stringdeserialiser);
call.setSOAPMappingRegistry(registry);
It fixed my problem, but it caused a different one. Try it.
Irene
Houman Moshtagh wrote:
>
> Hello all,
>
> Finally I could make an almost working Java Client which invoke a Call
> to MS Web Service. :)
>
> The result is just a hello world string and I can already see the
> wonderful SOAP Body in my TCP Monitor.
>
> Here it is:
>
> <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
> - <SOAP-ENV:Envelope xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema"
> xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
> - <SOAP-ENV:Body
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> - <SOAPSDK4:testResponse
> xmlns:SOAPSDK4="http://tempuri.org/ProjectTest/message/">
> <Result>HELLO WORLD</Result>
> </SOAPSDK4:testResponse>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
>
> Everything should be fine, but I get a SOAP Exception, that it can not
> deserialize the <Result>HELLO WORLD</Result>.
> It is terrific. :(
>
> [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to
> deserialize a ':Result' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.;
> targetException=java.lang.IllegalArgumentException: No Deserializer
> found to deserialize a ':Result ' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.]
>
> I don't want it to deserialize the return value. I want to catch it
> myself with response.getReturnValue().getValue()
> How can I force SOAP stopping to help me? :)
>
> Thanks for any help,
> Houman
>
> __________________________________________________________________
>
> Gesendet von Yahoo! Mail - http://mail.yahoo.de
> Yahoo! präsentiert als offizieller Sponsor das Fußball-Highlight des
> Jahres: - http://www.FIFAworldcup.com
>
> --
> To unsubscribe, e-mail: <ma...@xml.apache.org>
> For additional commands, e-mail: <ma...@xml.apache.org>
--
******************************************************
Irene Moser, System Analyst, Technologies Team
AtBusiness Communications Oyj, Kaapeliaukio 1, FIN-00180 HELSINKI
Phone +358 9 2311 6649, Mobile +358 50 369 5101, Fax +358 9 2311 6601
e-mail: irene.moser@atbusiness.com
******************************************************