axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "jayalal jayarathna" <jayal...@gmail.com>
Subject Re: problem with String [] in axis 1.3 and .net client
Date Tue, 14 Oct 2008 16:34:15 GMT
This is the C# request which is not working,

<?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://external.soap.service.cps.moota.com" xmlns:types="
http://external.soap.service.cps.moota.com/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/">
<tns:sendSmsMessage><in0 href="#id1" />
   </tns:sendSmsMessage>
     <q1:SmsRequestDto id="id1" xsi:type="q1:SmsRequestDto" xmlns:q1="
http://dto.service.cps.moota.com">
       <projectId xsi:nil="true" /><user xsi:nil="true" />
       <message xsi:nil="true" />
       <msisdn href="#id2" />
       <applicationId xsi:nil="true" />
       <accountExternalId xsi:nil="true" />
       <accountId xsi:nil="true" />
       <originatingAddress xsi:nil="true" />
       <originatingAddressType xsi:nil="true" />
       </q1:SmsRequestDto>

       <soapenc:Array id="id2" soapenc:arrayType="xsd:string[1]">
              <Item>123456</Item>
        </soapenc:Array>
      </soap:Body>
    </soap:Envelope>


but for following Axis 1.3 client request it works fine

<?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:sendSmsMessage soapenv:encodingStyle="
http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="
http://soap.service.cps.moota.com">
 <in0 href="#id0"/>
 </ns1:sendSmsMessage>
  <multiRef id="id0" soapenc:root="0" soapenv:encodingStyle="
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns2:SmsRequestDto"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns2="
http://dto.service.cps.moota.com">
  <projectId href="#id1"/>
  <user xsi:type="xsd:string" xsi:nil="true"/>
  <message xsi:type="xsd:string" xsi:nil="true"/>
  <msisdn soapenc:arrayType="xsd:string[1]" xsi:type="soapenc:Array">
     <ns3:item xsi:type="xsd:string" xmlns:ns3="
http://webservice.clientprovisioning.moota.com">123456789</ns3:item>
  </msisdn>
  <applicationId xsi:type="xsd:int" xsi:nil="true"/>
   <accountExternalId xsi:type="xsd:int" xsi:nil="true"/>
   <accountId xsi:type="xsd:int" xsi:nil="true"/>
   <originatingAddress xsi:type="xsd:string" xsi:nil="true"/>
   <originatingAddressType xsi:type="xsd:int" xsi:nil="true"/>
   </multiRef>

   <multiRef id="id1" soapenc:root="0" soapenv:encodingStyle="
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="xsd:long"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
   10</multiRef>
   </soapenv:Body></soapenv:Envelope>





<?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://external.soap.service.cps.moota.com" xmlns:types="
http://external.soap.service.cps.moota.com/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/">
<tns:sendSmsMessage><in0 href="#id1"
/></tns:sendSmsMessage><q1:SmsRequestDto id="id1"
xsi:type="q1:SmsRequestDto"
xmlns:q1="http://dto.service.cps.moota.com"><projectId
xsi:nil="true" /><user xsi:nil="true" /><message xsi:nil="true" /><msisdn
href="#id2" /><applicationId xsi:nil="true" /><accountExternalId
xsi:nil="true" /><accountId xsi:nil="true" /><originatingAddress
xsi:nil="true" /><originatingAddressType xsi:nil="true"
/></q1:SmsRequestDto><soapenc:Array id="id2"
soapenc:arrayType="xsd:string[1]"><Item>123456</Item></soapenc:Array></soap:Body></soap:Envelope>





<?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>
<soapenv:Fault><faultcode>soapenv:Server.userException</faultcode>
<faultstring>java.lang.IllegalArgumentException: array element type
mismatch</faultstring><detail>
<ns1:hostname xmlns:ns1="http://xml.apache.org/axis/
">jayalal-PC</ns1:hostname></detail></soapenv:Fault>
</soapenv:Body></soapenv:Envelope>

2008/10/13 Deepal Jayasinghe <deepal@opensource.lk>

> Did you check whether it sends the correct request , I mean is it valid
> according to the WSDL ?
> You can see the message if you send that via TCP Monitor.
>
> -Deepal
>
> jayalal jayarathna wrote:
> > Hi,
> > I have a web service developed on Axis 1.3, and it has following method.
> > SendTaskResponseDto sendSmsMessage(SmsRequestDto in0)
> >
> > SmsRequestDto has an string array
> >
> > public class SmsRequestDto implements java.io.Serializable {
> > private java.lang.Long projectId;
> >
> > private java.lang.String user;
> >
> > private java.lang.String message;
> >
> > private java.lang.String[] msisdn;
> >
> > private java.lang.Integer applicationId;
> >
> > .........
> >
> >
> > when I try to call SendTaskResponseDto sendSmsMessage(SmsRequestDto
> > in0) through C#.net client it gives following exception at server
> >
> > 13 Oct 2008 11:03:00,015 ERROR BeanPropertyTarget - Could not convert
> > [Ljava.lang.String; to bean field 'msisdn[0]', type java.lang.String
> > 13 Oct 2008 11:03:00,028 INFO EXCEPTIONS - AxisFault:
> > AxisFault
> > faultCode:
> > {http://schemas.xmlsoap.org/soap/envelope/}Server.userException<http://schemas.xmlsoap.org/soap/envelope/%7DServer.userException>
> > <http://schemas.xmlsoap.org/soap/envelope/%7DServer.userException>
> > faultSubcode:
> > faultString: java.lang.IllegalArgumentException: array element type
> > mismatch
> > faultActor:
> > faultNode:
> > faultDetail:
> > {
> http://xml.apache.org/axis/}stackTrace:java.lang.IllegalArgumentException<http://xml.apache.org/axis/%7DstackTrace:java.lang.IllegalArgumentException>
> > <
> http://xml.apache.org/axis/%7DstackTrace:java.lang.IllegalArgumentException
> >:
> > array element type mismatch
> > at java.lang.reflect.Array.set(Native Method)
> > at
> >
> org.apache.axis.utils.BeanPropertyDescriptor.set(BeanPropertyDescriptor.java:195)
> >
> >
> >
> >
> >
> >
> > WSDL as follows
> >
> > <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
> > −
> > <complexType name="ArrayOf_soapenc_string">
> > −
> > <complexContent>
> > −
> > <restriction base="soapenc:Array">
> > <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]"/>
> > </restriction>
> > </complexContent>
> > </complexType>
> >
> >
> > <complexType name="SmsRequestDto">
> > <sequence>
> > <element name="projectId" nillable="true" type="xsd:long"/>
> > <element name="user" nillable="true" type="xsd:string"/>
> > <element name="message" nillable="true" type="xsd:string"/>
> > <element name="msisdn" nillable="true"
> > type="impl:ArrayOf_soapenc_string"/>
> > <element name="applicationId" nillable="true" type="xsd:int"/>
> > <element name="accountExternalId" nillable="true" type="xsd:int"/>
> > <element name="accountId" nillable="true" type="xsd:int"/>
> > <element name="originatingAddress" nillable="true" type="xsd:string"/>
> > <element name="originatingAddressType" nillable="true" type="xsd:int"/>
> > </sequence>
> > </complexType>
> >
> >
> > c# code
> > static void Main(string[] args)
> > {
> > lh.CPSWebServiceService service = new
> > ConsoleApplication1.lh.CPSWebServiceService();
> > lh.SmsRequestDto request = new ConsoleApplication1.lh.SmsRequestDto();
> > string[] msisdn = new string[1];
> > msisdn[0] = "123456";
> > // msisdn[1] = "456";
> > request.msisdn = msisdn;
> > service.sendSmsMessage(request);
> >
> > }
> >
> >
> >
> > Please help me. Thank you,
> >
> > Jayalal
>
> --
> Thank you!
>
>
> http://blogs.deepal.org
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-user-help@ws.apache.org
>
>

Mime
View raw message