This looks like bug 9637 - it should be fixed in the current
cvs source (but not in beta 2).

What version are you using?

Blake

> -----Original Message-----
> From: Kai Steven Kunze [mailto:[EMAIL PROTECTED]]
> Sent: Monday, June 10, 2002 11:26 AM
> To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
> Subject: ... again multiRef problem with .Net client
> 
> 
> Hi,
> I set up a Axis Server on Tomcat4b3 and I try to invoke a web 
> service on it from
> a .Net Client. Everything worked fine untill I used a method 
> enterItem(String
> session, Order order) where order is a bean. If this method 
> is invoked by the
> .Net Client, the business logic is working, meaning the item 
> is added in the
> database. However, the response the .Net Client gets back is 
> an exception:
> Unhandled Exception: System.Web.Services.Protocols.SoapException:
> java.lang.IllegalArgumentException: argument type mismatch
> 
> With a WSDL2Java client it just works fine ...
> I compared the two SOAP requests, that's what I found out:
> The WSDL2Java client request includes a multiRef tag with 
> other specs then the
> .Net Client  (see the attached requests).
> Could anybody please help me to fix this problem ? What is it 
> related to and why
> is the Axis implementation executing the business logic 
> perfectly, but throwing
> an exception at the end ??
> 
> Thanks in advance.
> 
> mfg,
> 
> Kai.
> 
> 
> 
> 
> The WSDL2Java client request:
> <?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>
>   <ns1:enterItem xmlns:ns1="enterItem">
>    <id xsi:type="xsd:string">7245716</id>
>    <order href="#id0"/>
>   </ns1:enterItem>
>   <multiRef id="id0" SOAP-ENC:root="0"
> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; 
> xsi:type="ns3:Order"
> xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/:encodingStyle";
> xmlns:ns3="urn:service.ws">
>    <prod xsi:type="xsd:string">CDROM</prod>
>    <price xsi:type="xsd:string">12345</price>
>   </multiRef>
>  </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
> 
> The .Net Client request:
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
> xmlns:tns="http://localhost/axis/services/login";
> xmlns:types="http://localhost/axis/services/login/encodedTypes";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
>      <soap:Body 
> soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";>
>           <q1:enterItem xmlns:q1="enterItem">
>                <id xsi:type="xsd:string">14467747</id>
>                <order href="#id1" />
>           </q1:enterItem>
>           <q2:Order id="id1" xsi:type="q2:Order" 
> xmlns:q2="urn:service.ws">
>                <prod xsi:type="xsd:string">CDROM </prod>
>                <price xsi:type="xsd:string">12345</price>
>           </q2:Order>
>      </soap:Body>
> </soap:Envelope>
> 
> 
> On the server side I get this exception:
> 
> - Exception:
> java.lang.IllegalArgumentException: argument type mismatch
>         at org.apache.axis.AxisFault.makeFault(AxisFault.java:116)
>         at 
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:
> 267)
>         at 
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrateg
> y.java:71)
>         at 
> org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:154)
>         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:121)
>         at 
> org.apache.axis.server.AxisServer.invoke(AxisServer.java:288)
>         at 
> org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:57
> 6)
>         at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
>         at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
> icationFilterChain.java:247)
>         at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
> ilterChain.java:193)
>         at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
> alve.java:243)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:566)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> a:472)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> 
>         at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
> alve.java:190)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:566)
>         at 
> org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve
> .java:246)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:564)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> a:472)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> 
>         at 
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:
> 2347)
>         at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
> ava:180)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:566)
>         at 
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche
> rValve.java:170)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:564)
>         at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
> ava:170)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:564)
>         at 
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
> 468)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:564)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> a:472)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> 
>         at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
> ve.java:174)
>         at 
> org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
> .java:566)
>         at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
> a:472)
>         at 
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
> 
>         at 
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso
> r.java:1027)
>         at 
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja
> va:1125)
>         at java.lang.Thread.run(Thread.java:536)
> Caused by: java.lang.IllegalArgumentException: argument type mismatch
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> java:39)
>         at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
> sorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:324)
>         at 
> org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider
> .java:229)
>         at 
> org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:
> 262)
> --
> Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte 
> Informationen.
> Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren 
> Sie bitte
> sofort den Absender und loeschen Sie diese E-Mail. Das 
> unbefugte Kopieren
> dieser E-Mail oder die unbefugte Weitergabe der enthaltenenen 
> Informationen
> ist nicht gestattet.
> 
> The information contained in this message is confidential or 
> protected by
> law. If you are not the intended recipient, please contact 
> the sender and
> delete this message. Any unauthorised copying of this message or
> unauthorised distribution of the information contained herein 
> is prohibited.
> 
> 

Reply via email to