Nuno,

Can you post a sample good request/response? It almost looks like the
type name of your custom type is, somehow, not being mapped to the
correct namespace so that your deserializers will kick in. 

-Scott

-----Original Message-----
From: Nuno Guerreiro [mailto:[EMAIL PROTECTED]] 
Sent: Friday, April 19, 2002 1:47 AM
To: Axis
Subject: Problem calling Axis service from .Net

Axis generates a 'java.lang.IllegalArgumentException'
when a request from a .Net (VB-based) client. 

I suspect of the way hrefs are built. Axis understands
the 'multiRef' element, but the .Net request doesn't
use the 'multiRef' element.

The test client generated by Axis WSDL2JAVA work fine.

Any ideas?


Many thanks,


Nuno Guerreiro



Following is the request:

POST /axis/services/getDDAccounts HTTP/1.1

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web
Services Client Protocol 1.0.3705.209)

Content-Type: text/xml; charset=utf-8

SOAPAction: ""

Content-Length: 1273

Expect: 100-continue

Host: golduck




<?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://golduck:8080/axis/services/getDDAccounts";
xmlns:types="http://golduck:8080/axis/services/getDDAccounts/encodedType
s"
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/";>
   <tns:getDDAccounts>
    <in href="#id1" />
    <inputContext href="#id2" />
   </tns:getDDAccounts>
   <q1:DDAccountsInputType id="id1"
xsi:type="q1:DDAccountsInputType"
xmlns:q1="http://www.cidadebcp.pt/webservices/schemas/getDDAccounts";
/>
   <q2:InputContextType id="id2"
xsi:type="q2:InputContextType"
xmlns:q2="http://www.cidadebcp.pt/webservices/schemas/types";>
    <channel xsi:type="xsd:string">WAP
    </channel>
    <device href="#id3" />
    <source xsi:type="xsd:string">ONIWAY
    </source>
    <deferExecution xsi:type="xsd:boolean">false
    </deferExecution>
    <securityCodeValues xsi:type="xsd:string">123
    </securityCodeValues>
   </q2:InputContextType>
   <q3:DeviceType id="id3" xsi:type="q3:DeviceType"
xmlns:q3="http://www.cidadebcp.pt/webservices/schemas/types";>
    <id xsi:type="xsd:string">435345345
    </id>
   </q3:DeviceType>
  </soap:Body>
 </soap:Envelope>

-----------------------------------------------------
And the error generated is:

<?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://golduck:8080/axis/services/getDDAccounts";
xmlns:types="http://golduck:8080/axis/services/getDDAccounts/encodedType
s"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
 
  <soap:Body>
  
   <soap:Fault>
   
    <faultcode
xmlns:ns1="http://xml.apache.org/axis/";>ns1:Server.userException
    </faultcode>
   
    <faultstring>java.lang.IllegalArgumentException:
argument type mismatch
    </faultstring>
   
    <detail>
    
     <ns2:stackTrace
xmlns:ns2="http://xml.apache.org/axis/";>java.lang.IllegalArgumentExcepti
on:
argument type mismatch&#xd;
        at java.lang.reflect.Method.invoke(Native
Method)&#xd;
        at
org.apache.axis.providers.java.RPCProvider.processMessage(Unknown
Source)&#xd;
        at
org.apache.axis.providers.java.JavaProvider.invoke(Unknown
Source)&#xd;
        at
org.apache.axis.strategies.InvocationStrategy.visit(Unknown
Source)&#xd;
        at org.apache.axis.SimpleChain.doVisiting(Unknown
Source)&#xd;
        at org.apache.axis.SimpleChain.invoke(Unknown
Source)&#xd;
        at org.apache.axis.server.AxisServer.invoke(Unknown
Source)&#xd;
        at
org.apache.axis.transport.http.AxisServlet.doPost(Unknown
Source)&#xd;
        at
javax.servlet.http.HttpServlet.service(HttpServlet.java:760)&#xd;
        at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)&#xd;
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica
tionFilterChain.java:247)&#xd;
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt
erChain.java:193)&#xd;
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:243)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:566)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
72)&#xd;
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)&#x
d;
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:201)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:566)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
72)&#xd;
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)&#x
d;
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:234
4)&#xd;
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:164)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:566)&#xd;
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:170)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:564)&#xd;
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:170)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:564)&#xd;
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:462
)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:564)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
72)&#xd;
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)&#x
d;
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:163)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.ja
va:566)&#xd;
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
72)&#xd;
        at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)&#x
d;
        at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.j
ava:1011)&#xd;
        at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:
1106)&#xd;
        at java.lang.Thread.run(Thread.java:484)&#xd;

     </ns2:stackTrace>
   
    </detail>
  
   </soap:Fault>
 
  </soap:Body>

 </soap:Envelope>

__________________________________________________
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/

Reply via email to