Hi all,
After installing Axis beta 2 and Tomcat 3.3.1 on my NT box,
I could successfully run your samples - e.g. Calculator:
java samples.userguide.example2.CalcClient -p8080 add 5 8
Got result : 13
This looks like a great job!
Now, I was trying to call the Calculator sample from some
Visual Basic code using MS SOAP Toolkit 2.0 :
Call soapclient.mssoapinit("http://localhost:8080/axis/Calculator.jws?wsdl")
wscript.echo soapclient.add(1, 2)
It looks to call the service properly...Unfortunately, it failed returning
the following error:
java.lang.IllegalArgumentException: argument type mismatch
By examining the exchanged messages with tcpdump, I can see the following
1) When call from an Axis client:
----
POST /axis/Calculator.jws HTTP/1.0
Content-Length: 485
Host: localhost
Content-Type: text/xml; charset=utf-8
SOAPAction: ""
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
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"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<add>
<op1 xsi:type="xsd:int">5</op1>
<op2 xsi:type="xsd:int">8</op2>
</add>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
----
2) When called from MS SOAP Toolkit client:
----
POST /axis/Calculator.jws HTTP/1.1
Content-Type: text/xml; charset="UTF-8"
Host: localhost
SOAPAction: ""
Content-Length: 320
<?xml version="1.0" encoding="UTF-8" standalone="no"?><SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAPSDK1:add
xmlns:SOAPSDK1="add"><i1>1</i1><i2>2</i2></SOAPSDK1:add></SOAP-ENV:Body></SOAP-ENV:Envelope>
----
So my questions:
- Is it supposed to fail? I mean, isn't SOAP supposed to be independant
of the implementation?
- Why is that failing exactly?
- Is this a general compatibility problem? Note that this would be
a showstopper for our project.
- Is there an easy workaround transparent from the client-side?
Many thanks for your help.
--
Ga�tan Frenoy (aka Gaff)
[EMAIL PROTECTED]
Brussels - Belgium