Feng Yuan wrote:

Hi Robert,
I met the same problem several times. I do not really remember how to solve
it now. But you may try the
webapps\axis\WEB-INF\server-config.wsdd to check if you can find something
useful there.

Thanks. I have pasted the relevent portion of the server-config.wsdd below.


I should also mention that when calling the methods, it does return what I would expect. I am just curious why I get the failure. I realize I have a lot yet to learn -- just starting with web services :(

Here is what I get when calling the getDir method:

<?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>
    <filesystem xsi:nil="true"
       xmlns="http://xstandard.com/2002/webdir"; />
  </soapenv:Body>
</soapenv:Envelope>

The plugin sending the request has hardcoded the namespace prefix (argghh) for tags in their namespace. How would I ensure the the file element tags are prefixed with 'wd'?

Also, is it best to extend the generated files to build children for something like the filesystem element above? Are there some examples of this (using the wsdl2java generated java)? (As you might guess this is a service that returns a directory structure of images from the server)

thanks for any help,
-Rob

from the server-config.wsdd:

<service name="WebDirPortType" provider="java:RPC" style="document" use="literal">

<requestFlow>

<handler type="soapmonitor"/>

</requestFlow>

<responseFlow>

<handler type="soapmonitor"/>

</responseFlow>

<parameter name="allowedMethods" value="*"/>

<parameter name="wsdlPortType" value="WebDirPortType"/>

<parameter name="className" value="com.xstandard._2002.webdir.WebDirSoapBindingSkeleton"/>

<parameter name="wsdlServicePort" value="WebDirPortType"/>

<parameter name="wsdlTargetNamespace" value="http://xstandard.com/2002/webdir"/>

<parameter name="wsdlServiceElement" value="WebDirService"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns1:ImageFile" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir.ImageFile" xmlns:ns1="http://xstandard.com/2002/webdir"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns2:&gt;filesystem&gt;file" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir._filesystem_file" xmlns:ns2="http://xstandard.com/2002/webdir"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns3:&gt;filesystem&gt;folder" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir._filesystem_folder" xmlns:ns3="http://xstandard.com/2002/webdir"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns4:GenericFile" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir.GenericFile" xmlns:ns4="http://xstandard.com/2002/webdir"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns5:SoapRequest" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir.SoapRequest" xmlns:ns5="http://xstandard.com/2002/webdir"/>

<typeMapping deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory" encodingStyle="" qname="ns6:&gt;filesystem" serializer="org.apache.axis.encoding.ser.BeanSerializerFactory" type="java:com.xstandard._2002.webdir._filesystem" xmlns:ns6="http://xstandard.com/2002/webdir"/>

</service>



Cheers, Feng




Reply via email to