I forgot to note this in my message below - the server doesn't have to return an ArrayList for the client to get one. As long as the server returns ANY array or Collection class, Axis will serialize it on the wire as a SOAP Array, which can be deserialized and converted to any desired array or Collection class on the client side (in this case an ArrayList).
Just FYI. --Glen > -----Original Message----- > From: Glen Daniels [mailto:[EMAIL PROTECTED]] > Sent: Thursday, April 25, 2002 8:52 AM > To: '[EMAIL PROTECTED]' > Subject: RE: Using the Axis api > > > > Hi Jonathan! > > Chris makes some good points, although I'm not sure I'd > classify the docs as "excellent" yet. :) > > To address the particular scenario you mention (returning an > ArrayList), you really don't have to do anything complicated... > > On the server, just deploy a service which returns an > ArrayList, for instance: > > MyService.java: > public class MyService { > public ArrayList getArray() { > ArrayList list = new ArrayList(); > list.add("Testing"); > return list; > } > } > > deploy.wsdd: > <service name="MyServiceName" provider="java:RPC"> > <parameter name="className" value="MyService"/> > <parameter name="allowedMethods" value="getArray"/> > </service> > > (imports / namespace declarations elided) > > On the client, call the service as usual but make sure to use > the setReturnClass method on the Call object: > > Call call = new > Call("http://localhost:8080/axis/services/MyServiceName"); > call.setReturnClass(ArrayList.class); > // Now you can invoke the call > ArrayList result = (ArrayList)call.invoke("getArray", null); > > This method allows Axis to automatically convert the return > type (which would be an Object[]) to an ArrayList for you. > > --Glen > > > -----Original Message----- > > From: Chris Haddad [mailto:[EMAIL PROTECTED]] > > Sent: Thursday, April 25, 2002 8:28 AM > > To: [EMAIL PROTECTED]; 'Jonathan' > > Subject: RE: Using the Axis api > > > > > > Johnathan - > > > > The Axis documentation is an excellent start :) > > > > Also, the samples and /java/test code provide good > practical insights. > > > > But, another way to learn the Axis API, is to run WSDL2Java and > > Java2WSDL. WSDL2Java can be used to boot up a service > > definition from a > > Java business object. The Axis WSDL2Java utility will create > > server and > > client side stub code. You can then review the source and > see how the > > API calls should be structured. > > > > /Chris > > > > -----Original Message----- > > From: Jonathan [mailto:[EMAIL PROTECTED]] > > Sent: Wednesday, April 24, 2002 11:22 PM > > To: [EMAIL PROTECTED] > > Subject: Using the Axis api > > > > Hello. > > I have played with some of the examples, and I am realizing > that there > > is much more to "building" a soap call.� That is, thers are > > many options > > and�additional api calls if you want the SOAP engine to do what you > > want.� For example, I am very confused as to what additional > > api calls I > > need to make in order to act as a client retrieving an > ArrayList type > > structure. I have to configure the correct call as a client, > > and create > > & serialize the correct xml structure as a server. > > � > > Can someone steer me in the correct direction? > > (please do not just refer me to the AXIS documentation) > > > > >
