You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Jian Zhang <jz...@symcor.com> on 2002/09/30 22:02:43 UTC
SOAP message not well formed.
With a lot of help from James Black, I can finally get server side code
executed till the end of operation that returns an array of my own object
Folder.
However, on the client side, I got:
========================
faultString: org.xml.sax.SAXParseException: The root element is required in
a
well-formed document.
faultActor: null
faultDetail:
stackTrace: org.xml.sax.SAXParseException: The root element is
required
in a well-formed document.
at
org.apache.xerces.framework.XMLParser.reportError(XMLParser.java:121
)
=========================
tcpmon reported an empty SOAP message (but with HTTP response header).
My client side code is like this:
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress( new java.net.URL(serverUrl) );
call.setOperationName(new QName(serviceName, operationName));
System.out.println ("\n\n\n\n: service " + serviceName);
QName qn = new QName( "urn:MyRequestorService", "Folder" );
call.registerTypeMapping(Folder.class, qn,
new
org.apache.axis.encoding.ser.BeanSerializerFactory(Folder.class, qn),
new
org.apache.axis.encoding.ser.BeanDeserializerFactory(Folder.class, qn));
//
// call.setReturnType( new QName("",
(javax.xml.rpc.encoding.XMLType.SOAP_ARRAY);
// org.apache.axis.encoding.XMLType.
// call.setReturnType( new QName
(org.apache.axis.encoding.XMLType.ATTR_ARRAY_TYPE, "symcor:folderArray") );
call.setReturnType( new QName
(org.apache.axis.encoding.XMLType.ATTR_ARRAY_TYPE, "urn:MyRequestorService")
);
Folder[] ret = (Folder[]) call.invoke( new Object[] {configDir,
appName, serverName, loginName, password } );
Is there anything wrong with my code?
Thanks,
my deployment descriptor is:
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="MyRequestorService" provider="java:RPC">
<parameter name="className" value="com.symcor.od.server.soap.AxisFacade"/>
<parameter name="allowedMethods" value="*"/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:Folder"
type="java:com.symcor.od.common.soap.message.Folder"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:MyArrayOfFolder"
type="java:com.symcor.od.common.soap.message.Folder[]"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:Criterion"
type="java:com.symcor.od.common.soap.message.Criterion"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:MyArrayOfCriterion"
type="java:com.symcor.od.common.soap.message.Criterion[]"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:Hit"
type="java:com.symcor.od.common.soap.message.Hit"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:MyArrayOfHit"
type="java:com.symcor.od.common.soap.message.Hit[]"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
<typeMapping
xmlns:ns="urn:MyRequestorService"
qname="ns:HitList"
type="java:com.symcor.od.common.soap.message.HitList"
serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
/>
</service>
</deployment>
Anyone has a similiar problem?