I downloaded the 04-19-02 nightly build. Anyway, I just changed every occurrence of List to ArrayList in both the webservice and the client class and Lo! It worked!!!!
Thanks so much for all your help. ----- Original Message ----- From: "Glen Daniels" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, April 19, 2002 3:06 PM Subject: RE: Class Cast Exception using return type as List > > Hm - that looks like it should work fine. Are you using up-to-date Axis source? > > --Glen > > > -----Original Message----- > > From: Vaishakhi Ajmera [mailto:[EMAIL PROTECTED]] > > Sent: Friday, April 19, 2002 3:46 PM > > To: [EMAIL PROTECTED] > > Subject: Re: Class Cast Exception using return type as List > > > > > > Thanks for your reply Glen, > > I tried using both the setReturnType and setReturnClass but > > still got the > > ClassCastException > > This is what my webservice looks like > > > > import java.util.*; > > //import com.ardec.ebf.usermgr.*; > > > > public class UserList1 > > { > > private ArrayList userList=new ArrayList(); > > > > public List getUserList() > > { > > userList.add(new String("Vaishakhi Ajmera")); > > userList.add(new String("Rabia Malik")); > > return userList; > > } > > > > } > > My client class calls the getUserList method. This is what > > the method that > > calls the webservice in my client class looks like > > > > protected String doExecute() throws Exception > > { > > String endpoint = "http://localhost:8080/axis/UserList1.jws"; > > > > Service service = new Service(); > > Call call = (Call) service.createCall(); > > > > call.setTargetEndpointAddress( new java.net.URL(endpoint) ); > > call.setOperationName( "getUserList" ); > > > > call.setReturnClass( java.util.List.class ); > > call.setReturnType(XMLType.SOAP_ARRAY); > > > > listOfUsers = (ArrayList) call.invoke( new Object [] {}); > > > > > > return SUCCESS; > > } > > > > So as you can see my webservice returns a List object. How do > > I make my > > service return a SOAP array. I am ending you the code so that > > you can point > > out anything that u see I am doing wrong. Hope this helps you solve my > > problem. > > > > This is great help and I surely appreciate it. > > Thanks > > > > Vaishakhi > > > > ----- Original Message ----- > > From: "Glen Daniels" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Friday, April 19, 2002 2:25 PM > > Subject: RE: Class Cast Exception using return type as List > > > > > > > > > > Actually, the call.setReturnClass() method removes the need for the > > convert() (that's the whole point of that method). > > > > > > Vaishakhi, are you sure your service is actually returning > > a SOAP array? > > Also, you need to specify both the return type and the return class, I > > believe. > > > > > > --Glen > > > > > > > -----Original Message----- > > > > From: Vidyanand Murunikkara [mailto:[EMAIL PROTECTED]] > > > > Sent: Friday, April 19, 2002 3:16 PM > > > > To: [EMAIL PROTECTED] > > > > Subject: RE: Class Cast Exception using return type as List > > > > > > > > > > > > Hi > > > > > > > > I remember someone mentioning in the list that for List/Vector the > > > > return value from the call.invoke(...) is an object array. > > > > To convert it to some thing that u want u would use the > > convert method > > > > in org.apache.axis.utils.JavaUtils. > > > > > > > > Hope this helps > > > > Vidyanand > > > > > > > > > > > > > > > > -----Original Message----- > > > > From: Vaishakhi Ajmera [mailto:[EMAIL PROTECTED]] > > > > Sent: Friday, April 19, 2002 11:17 AM > > > > To: [EMAIL PROTECTED] > > > > Subject: Class Cast Exception using return type as List > > > > > > > > > > > > I have followed the instructions in the mailing lists and > > used these > > > > options > > > > to get a List as return type from a web service > > > > > > > > call.setReturnClass ( java.util.List.class) > > > > List ls = (List)call.invoke( new Object[] {} ); > > > > > > > > or > > > > > > > > call.setReturnType( XMLType.SOAP_ARRAY); > > > > ArrayList ls = (ArrayList)call.invoke( new Object[] {} ); > > > > > > > > Both the above combination of statements give me a > > > > java.lang.ClassCastException: [Ljava.lang.Object; > > > > . > > > > How should I go about then to get a java.util.List as > > return type from > > > > my > > > > webservice. > > > > > > > > Thanks > > > > Vaishakhi > > > > > > > > > >
