Steven,
I'm not sure exactly what is going on here, as I've never used Java2WSDL, yet. However, it seems to me that the tool would not have much information to go on, for the Bean class, and probably wouldn't be able to deserialize or serialize it. The Bean class simply has one private field, foo, with no public accessors at all, and no way to get elements into and out of the array. Try to find some documentation about Java2WSDL, that describes how it generates WSDL and what it needs to do a good job. Unless someone here knows this?
Tony
"Melzer, Steven"
<[EMAIL PROTECTED]>
10-Sep-2004 15:40
|
|
i have created a very simple web service using doc/literal encoding to try to test string arrays. my very simple example as a single method:
public Bean execute(Bean bean) {
return bean;
}
a Bean is simply:
public class Bean {
private String[] foo;
}
i am using the Java2WSDL and WDSL2Java utilities to create all the stub code. my client is simply:
Bean bean = new Bean();
bean.setFoo(new String[]{"a", "b", "c"});
MainIF m = (MainIF)service.gettest();
Bean response = m.execute(bean);
i get an error when the client runs:
org.xml.sax.SAXException: Found character data inside an array element while deserializing
and the request XML looks wrong:
<?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>
<bean xmlns="urn:paymentech.com">
<foo xsi:type="ns1:ArrayOf_xsd_string" xmlns="" xmlns:ns1="urn:paymentech.com">d</foo>
<foo xmlns="">e</foo>
<foo xmlns="">r</foo>
</bean>
</soapenv:Body>
</soapenv:Envelope>
does anyone know how to make string arrays work correctly with doc/literal encoding?
thanks,
steve
Learn more about Paymentech's payment processing services at www.paymentech.com
THIS MESSAGE IS CONFIDENTIAL. This e-mail message and any attachments are proprietary and confidential information intended only for the use of the recipient(s) named above. If you are not the intended recipient, you may not print, distribute, or copy this message or any attachments. If you have received this communication in error, please notify the sender by return e-mail and delete this message and any attachments from your computer.
..