Hi,
I'm working on integration with an outside web service (I have no
control over the WSDL), and am running into an Axis Fault when
invoking one of the methods. From my investigation, I'm guessing that
WSDL2Java hosed something up, but I'm really not sure.
If anyone could give me a pointer on where to start hunting this
down, it would be much appreciated!
-- The exception that is thrown is:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}
Server.userException
faultSubcode:
faultString: org.xml.sax.SAXException: Unable to marshall between XML
and Castor Objects :unable to find FieldDescriptor for 'addressbook'
in ClassDescriptor of CustomerAddressbook
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException:
Unable to marshall between XML and Castor Objects :unable to find
FieldDescriptor for 'addressbook' in ClassDescriptor of
CustomerAddressbook
at
org.apache.axis.encoding.ser.castor.CastorDeserializer.onEndElement
(Ljava/lang/String;Ljava/lang/String;Lorg/apache/axis/encoding/
DeserializationContext;)V(CastorDeserializer.java:66)
-- The WSDL I am working with is at:
https://webservices.netsuite.com/wsdl/v2_0_0/netsuite.wsdl
-- CustomerAddressbook is defined in:
https://webservices.netsuite.com/xsd/lists/v2_0_0/relationships.xsd
-- The code that WSDL2Java generated for setting up the de/
serializers for that type is:
qName = new javax.xml.namespace.QName
("urn:relationships_2_0.lists.webservices.netsuite.com",
"CustomerAddressbook");
cachedSerQNames.add(qName);
cls =
com.netsuite.webservices.lists.relationships_2_0.CustomerAddressbook.cla
ss;
cachedSerClasses.add(cls);
cachedSerFactories.add(beansf);
cachedDeserFactories.add(beandf);
qName = new javax.xml.namespace.QName
("urn:relationships_2_0.lists.webservices.netsuite.com",
"CustomerAddressbookList");
cachedSerQNames.add(qName);
cls =
com.netsuite.webservices.lists.relationships_2_0.CustomerAddressbook
[].class;
cachedSerClasses.add(cls);
qName = new javax.xml.namespace.QName
("urn:relationships_2_0.lists.webservices.netsuite.com",
"CustomerAddressbook");
qName2 = new javax.xml.namespace.QName
("urn:relationships_2_0.lists.webservices.netsuite.com", "addressbook");
cachedSerFactories.add(new
org.apache.axis.encoding.ser.ArraySerializerFactory(qName, qName2));
cachedDeserFactories.add(new
org.apache.axis.encoding.ser.ArrayDeserializerFactory());
Any ideas?
Ian
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]