Re: problem with String [] in axis 1.3 and .net client

2008-10-14 Thread jayalal jayarathna
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:sendSmsMessagein0 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]
  Item123456/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:sendSmsMessagein0 href=#id1
//tns:sendSmsMessageq1: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:SmsRequestDtosoapenc:Array id=id2
soapenc:arrayType=xsd:string[1]Item123456/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:Faultfaultcodesoapenv:Server.userException/faultcode
faultstringjava.lang.IllegalArgumentException: array element type
mismatch/faultstringdetail
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 [EMAIL PROTECTED]

 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

problem with String [] in axis 1.3 and .net client

2008-10-13 Thread jayalal jayarathna
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
 faultSubcode:
 faultString: java.lang.IllegalArgumentException: array element type
mismatch
 faultActor:
 faultNode:
 faultDetail:
{
http://xml.apache.org/axis/}stackTrace: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