but in my wsdl file i don'y have a "operation tag" inside a "service tag" ....
the structure of my wsdl is like:

<?xml version="1.0" encoding="UTF-8"?>

<wsdl:definitions
     ....
    <wsdl:types>
......
    <wsdl:types/>

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

    <wsdl:message name="uploadResponse">
        <wsdl:part name="return" type="xsd:string"/>
    </wsdl:message>
   

    <wsdl:portType name="WebDiskPortType">
        <wsdl:operation name="list">
            <wsdl:input message="tns:listRequest" />
            <wsdl:output message="tns:listResponse" />
        </wsdl:operation>
       
        <wsdl:operation name="upload">
            <wsdl:input message="tns:uploadRequest"/>
            <wsdl:output message="tns:uploadResponse"/>
        </wsdl:operation>
    </wsdl:portType>

    <wsdl:binding name="WebDiskSOAPBinding" type="tns:WebDiskPortType">
        <soap:binding style="document" transport=" http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="list">
            <soap:operation soapAction=" http://www.informatica.uniroma2.it/WebDisk/wsdl/list"/>
            <wsdl:input>
                <soap:body use="literal"/>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
       
        <wsdl:operation name="upload">
            <soap:operation soapAction=" http://www.informatica.uniroma2.it/WebDisk/wsdl/upload"/>
            <wsdl:input>
                <mime:multipartRelated>
                    <mime:part>
                        <soap:body use="literal" parts="fileName"/>
                    </mime:part>
                    <mime:part>
                        <mime:content part="file" type="multipart/mixed"/>
                    </mime:part>
                </mime:multipartRelated>
            </wsdl:input>
            <wsdl:output>
                <soap:body use="literal"/>
            </wsdl:output>
        </wsdl:operation>
    </wsdl:binding>   
   
    <wsdl:service name="WebDiskService">

        <wsdl:port binding="tns:WebDiskSOAPBinding" name="WebDiskSOAP">
            <soap:address location="http://localhost:8080/axis/services/WebDiskSOAP "/>
        </wsdl:port>       

    </wsdl:service>
   
</wsdl:definitions>


i define the style(document/literal) of the service in the wsdl:binding.... what i have to do? i have to create two different binding???

thx for your response

regards
Simone

2006/1/20, Simone Bonazzoli <[EMAIL PROTECTED]>:
thank you for information... i will try this solution..,

regards


2006/1/20, Jogesh Kanojia < [EMAIL PROTECTED]>:
Hi Simone
 
For document Style mutiple method does'nt work.
 
you create two services
 
<service name="WebDiskSOAP1" style="document" use="literal">
......
<parameter name="className" value="it.uniroma2.informatica.webservices.WebDiskSOAPBindingImpl"/>
<operation name="list" qname="list" returnQName="retNS:listResponse" xmlns:retNS=" http://www.informatica.uniroma2.it/WebDisk " returnType="rtns:listResponse" xmlns:rtns="http://www.informatica.uniroma2.it/WebDisk " 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>
....
....
</service>
 
<service name="WebDiskSOAP2" style="document" use="literal">
......
<operation name="upload" qname="upload" returnQName="return" returnType="rtns:string" xmlns:rtns=" http://www.w3.org/2001/XMLSchema " soapAction="http://www.informatica.uniroma2.it/WebDisk/wsdl/upload " >
        <parameter qname="fileName" type="tns:string" xmlns:tns=" http://www.w3.org/2001/XMLSchema"/>
        <parameter qname="file" type="tns:Multipart" xmlns:tns=" http://xml.apache.org/xml-soap"/>
      </operation>
....
....
</service>
 

Hope this will solve your problem
 
On 1/20/06, Simone Bonazzoli <[EMAIL PROTECTED] > wrote:
sorry for my question... but i try to develop a simple webservice that support upload of binary file... th style is document/literal... i follow tha example in the example directory of axis... but i have an exception:

java.lang.NoSuchMethodException: org.apache.axis.encoding.ser
.JAFDataHandlerSerializerFactory.create(java.lang.Class, javax.xml.namespace.QName)

i attach the wsdd, wsdl and xsd files... if have any suggest pls mail me :)

thx
Simone
 


2006/1/20, Jogesh Kanojia <[EMAIL PROTECTED]>:
Add a Thread daemon in your application and schedule it to delete file from temp folder.


 
On 1/19/06, Vinita Joshi -X (vinjoshi - eTouch Systems at Cisco) < [EMAIL PROTECTED]> wrote:

Hi,

 

We have implemented web service which sends documents over. For certain document types (word, excel, pdf) a temporary file like Axis56789axis is created under tomcat/bin/temp on the server side. For certain document types (.txt, .java) such temporary files are not created.

 

We need to delete these temp files occasionally as it takes up disk space.

 

Is there any way if these temporary files can be deleted automatically after the response is sent?

 

The following is our server-config.wsdd file.

 

<?xml version="1.0" encoding="UTF-8"?>

<deployment xmlns=" http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java " xmlns:ns3="urn:com.cisco.ccw.webservices.DocumentService">

 <globalConfiguration>

  <parameter name="adminPassword" value="admin"/>

  <parameter name="attachments.Directory" value="temp"/>

  <parameter name="attachments.implementation" value="org.apache.axis.attachments.AttachmentsImpl"/>

  <parameter name="sendXsiTypes" value="true"/>

  <parameter name="sendMultiRefs" value="true"/>

  <parameter name="sendXMLDeclaration" value="true"/>

  <parameter name="axis.sendMinimizedElements" value="true"/>

  <requestFlow>

   <handler type="java:org.apache.axis.handlers.JWSHandler">

    <parameter name="scope" value="session"/>

   </handler>

   <handler type="java:org.apache.axis.handlers.JWSHandler">

    <parameter name="scope" value="request"/>

    <parameter name="extension" value=".jwr"/>

   </handler>

  </requestFlow>

 </globalConfiguration>

 <handler name="LocalResponder" type="java:org.apache.axis.transport.local.LocalResponder"/>

 <handler name="URLMapper" type="java:org.apache.axis.handlers.http.URLMapper"/>

 <handler name="Authenticate" type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/>

 <service name="AdminService" provider="java:MSG">

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

  <parameter name="enableRemoteAdmin" value="false"/>

  <parameter name="className" value="org.apache.axis.utils.Admin"/>

  <namespace>http://xml.apache.org/axis/wsdd/ </namespace>

 </service>

 <service name="Version" provider="java:RPC">

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

  <parameter name="className" value="org.apache.axis.Version"/>

 </service>

<service name="WorkflowService" provider="java:RPC" style="rpc" use="encoded">

      <parameter name="wsdlTargetNamespace" value=" http://webservices.ccw.cisco.com/"/>

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

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

      <parameter name="className" value="com.cisco.ccw.webservices.WorkflowBindingSkeleton"/>

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

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

</service>

 

  <service name="DocumentService" provider="java:RPC" style="rpc" use="encoded">

      <parameter name="wsdlTargetNamespace" value=" http://webservices.ccw.cisco.com/"/>

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

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

      <parameter name="className" value="com.cisco.ccw.webservices.DocumentBindingSkeleton"/>

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

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

 

      <!--typeMapping

        xmlns:ns=" http://webservices.ccw.cisco.com/xsd"

        qname="ns:genericStringArray"

        type="java:java.lang.String[]"

        serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"

        deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"

        encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/"

      /-->

             <typeMapping deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory"

            languageSpecificType="java:javax.activation.DataHandler" qname="ns3:DataHandler"

    serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory"

    encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/"

     />

     

  </service>

 

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

 

  <service name="DiscussionService" provider="java:RPC" style="rpc" use="encoded">

      <parameter name="wsdlTargetNamespace" value=" http://webservices.ccw.cisco.com/"/>

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

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

      <parameter name="className" value="com.cisco.ccw.webservices.DiscussionBindingSkeleton"/>

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

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

 

      <typeMapping

        xmlns:ns=" http://webservices.ccw.cisco.com/xsd"

        qname="ns:genericStringArray"

        type="java:java.lang.String[]"

        serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"

        deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"

        encodingStyle=" http://schemas.xmlsoap.org/soap/encoding/"

      />

  </service>

 

 <transport name="http">

  <requestFlow>

   <handler type="URLMapper"/>

   <handler type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>

  </requestFlow>

 </transport>

 <transport name="local">

  <responseFlow>

   <handler type="LocalResponder"/>

  </responseFlow>

 </transport>

</deployment>

 

Thanks,

 

Vinita

 

 

 

 







Reply via email to