When using doc style, all content that goes in the SOAP Body must be defined as an element, but the attachments are defined as types. So you must define elements to contain your fileName and return strings. e.g., the messages should be defined like so...

    <wsdl:message name="uploadRequest">
        <wsdl:part name="fileName" element="types:fileName"/>
        <wsdl:part name="file" type="xsd:base64Binary"/>
    </wsdl:message>

    <wsdl:message name="uploadResponse">
        <wsdl:part name="return" element="types:return"/>
    </wsdl:message>

And you need to add the following to your schema:

     <xsd:element name="fileName" type="xsd:string"/>
     <xsd:element name="return" type="xsd:string"/>

Anne

On 2/18/06, Simone Bonazzoli <[EMAIL PROTECTED]> wrote:
this is exactly swa specification... MIME message.... or not?


On 2/18/06, Xinjun Chen < [EMAIL PROTECTED]> wrote:
I am not sure what your problem is. I found the following snippet from your WSDL file.
 
   <wsdl:message name=3D"uploadRequest">
       <wsdl:part name=3D"fileName" type=3D"xsd:string"/>
       <wsdl:part name=3D"file" type=3D"xsd:base64Binary"/>
   </wsdl:message>

You use doc-lit style, yet your message have two parts. I am not sure whether this will cause problem. But anyway, this is not a good practice to have more than one part in a message.
 
 
 
 
Regards,
Xinjun

 
On 2/16/06, Simone Bonazzoli <[EMAIL PROTECTED] > wrote:
rodriguo, i think that the service is deployed correctly...

this is the wsdd..... any suggests???

simone

<!-- Use this file to deploy some handlers/chains and services      -->
<!-- Two ways to do this:                                           -->
<!--   java org.apache.axis.client.AdminClient deploy.wsdd          -->
<!--      after the axis server is running                          -->
<!-- or                                                             -->
<!--   java org.apache.axis.utils.Admin client|server deploy.wsdd   -->
<!--      from the same directory that the Axis engine runs         -->

<deployment
    xmlns=" http://xml.apache.org/axis/wsdd/"
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java ">

  <!-- Services from WebDiskService WSDL service -->

  <service name="WebDiskSOAP" provider="java:RPC" style="document" use="literal">
      <parameter name="wsdlTargetNamespace" value=" http://www.informatica.uniroma2.it/WebDisk/wsdl"/>
      <parameter name="wsdlServiceElement" value="WebDiskService"/>
      <parameter name="schemaQualified" value=" http://www.informatica.uniroma2.it/WebDisk/wsdl/types "/>
      <parameter name="schemaUnqualified" value=" http://www.informatica.uniroma2.it/WebDisk "/>
      <parameter name="wsdlServicePort" value="WebDiskSOAP"/>
      <parameter name="className" value="it.uniroma2.informatica.webservices.WebDiskSOAPBindingImpl "/>
      <parameter name="wsdlPortType" value="WebDiskPortType"/>
      <parameter name="typeMappingVersion" value="1.2"/>
     
      <operation name="list" qname="list" returnQName="retNS:listResponse" xmlns:retNS=" http://www.informatica.uniroma2.it/WebDisk" returnType="rtns:listResponse" soapAction=" http://www.informatica.uniroma2.it/WebDisk/wsdl/list" >
        <parameter qname="pns:listRequest" xmlns:pns=" http://www.informatica.uniroma2.it/WebDisk " type="tns:listRequest" xmlns:tns=" http://www.informatica.uniroma2.it/WebDisk"/>
      </operation>

      <operation name="upload" qname="upload" returnQName="retNS:uploadResponse" xmlns:rtNS=" http://www.informatica.uniroma2.it/WebDisk" returnType="xsd:string" soapAction=" http://www.informatica.uniroma2.it/WebDisk/wsdl/upload" >
        <parameter qname="fileName" type="pns:string" xmlns:pns=" http://www.w3.org/2001/XMLSchema "/>
        <parameter qname="file" type="pns:Multipart" xmlns:pns=" http://xml.apache.org/xml-soap"/>
      </operation>

      <parameter name="allowedMethods" value="list upload"/>

      <requestFlow>
          <handler type="soapmonitor"/>
      </requestFlow>
      <responseFlow>
    <handler type="soapmonitor"/>
      </responseFlow>



      <typeMapping
        xmlns:ns="http://www.informatica.uniroma2.it/WebDisk "
        qname="ns:listRequest"
        type="java:it.uniroma2.informatica.types.ListRequest"
        serializer="org.apache.axis.encoding.ser.castor.CastorSerializerFactory"
        deserializer="org.apache.axis.encoding.ser.castor.CastorDeserializerFactory"
        encodingStyle=""
      />
      <typeMapping
        xmlns:ns=" http://www.informatica.uniroma2.it/WebDisk"
        qname="ns:listResponse"
        type="java:it.uniroma2.informatica.types.ListResponse"
        serializer="org.apache.axis.encoding.ser.castor.CastorSerializerFactory "
        deserializer="org.apache.axis.encoding.ser.castor.CastorDeserializerFactory"
        encodingStyle=""
      />
      <typeMapping
        xmlns:ns=" http://www.informatica.uniroma2.it/WebDisk"
        qname="ns:myFileType"
        type="java:it.uniroma2.informatica.types.MyFileType"
        serializer="org.apache.axis.encoding.ser.castor.CastorSerializerFactory "
        deserializer="org.apache.axis.encoding.ser.castor.CastorDeserializerFactory"
        encodingStyle=""
      />
      <typeMapping
        xmlns:ns=" http://www.informatica.uniroma2.it/WebDisk"
        qname="ns:DataHandler"
        type="java:javax.activation.DataHandler"
        serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory "
        deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory"
        encodingStyle=""
      />    
     
     
  </service>
</deployment>



On 2/16/06, Simone Bonazzoli <[EMAIL PROTECTED] > wrote:
thank you for the information.... i will try

regards
simone


On 2/16/06, Rodrigo Ruiz <[EMAIL PROTECTED] > wrote:
From the logs you give in your post, it seems you are trying to catch
the wrong error :-)

The NoSuchMethodException is not an error condition. If you watch the
axis source code you will see that it is just a first attempt to get a
factory instance. Just after this log entry, there is a second attempt
(using another approach) and this one is successful.

The real problem is this one:

1047 [main] DEBUG org.apache.axis.ConfigurationException   - Exception:
org.apache.axis.ConfigurationException: No service named WebDiskSOAP is
available
1048 [main] DEBUG org.apache.axis.ConfigurationException  - Exception:
org.apache.axis.ConfigurationException: No service named
http://www.informatica.uniroma2.it/WebDisk/wsdl/upload
<http://www.informatica.uniroma2.it/WebDisk/wsdl/upload > is available

It seems the service is not correctly deployed on axis, and therefore,
it does not know how to handle your service soapAction.


Best Regards,
Rodrigo Ruiz

Simone Bonazzoli wrote:
> i see that example but i have a problem and i didn't be able to
> resolve it...
> the title of the mail sended in this mailing list is SWA PRoblem...
>
> howevere.... i paste the text below.... if u can help me i appreciate
> your help :)
>
> Simone
>
> ---------------------------------------------
> Hi, i'm developing a simple webservice that support the upload and
> download of binary files... i look at the example "swa" present in the
> samples directory of the axis distribution....
> i customize my wsdl and all otherthings but when i try to run my
> client the axis.log report this exception:
>
> java.lang.NoSuchMethodException :
> org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory.create (java.lang.Class,
> javax.xml.namespace.QName)
>





Reply via email to