Problem resolved - changed the getDocument signature to String args, and the client now passes a String array, instead of an Object array. The arg string is parsed on the service method. THere's probably another way of doing this, but this works for now. Any suggestions about this are welcome.
Phil Gibbs wrote: > > I have a wsdl generated client that calls a service method passing in an > Object array. There are 2 elements in the array, both of type String. > The relevant lines of code look like this: > My client.invoke() looks like this: > Object [] result = null; > Object [] object = new Object[2]; > object[0] = parameters; // parameters is of type String > object[1] = delimiter; // delimiter is of type > String > result = client.invoke(operationName, object ); > The service method signature looks like this: > public String getDocument(Object[] args); > The WSDL declaration looks like this: > <xsd:element maxOccurs="1" minOccurs="1" name="in0" nillable="true" > type="xsd:ArrayOfAnyType"/> > The Exception message looks like this: > Exception: Illegal argument invoking > 'com.foo.bar.DocumentHandler.getDocument([Ljava.lang.Object;)': argument > type mismatch > If I pass in a null object array it works fine, but as soon as the object > array is populated I have this problem. > Am I missing something very obvious? > Best Regards... > -- View this message in context: http://www.nabble.com/Problem-with-Dynamic-Client-tf2504088.html#a6995360 Sent from the XFire - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email
