axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave Anderer <dande...@udel.edu>
Subject Re: newbie .net interop question
Date Tue, 20 Jul 2004 16:40:12 GMT
Many thanks.

Makes perfect sense that apachesoap is Apache-only.  Thus the obvious 
question:  What is the "universal" way for a web service to specify that 
an element must be an XML document?  Or if there isn't one, what is a 
reasonable approximation?

As for <wsdlsoap:body>  - the example was created with 1.2 beta.  1.2b2 
indeed changes that behavior.



Anne Thomas Manes wrote:

>I would expect another SOAP toolkit to croak on this WSDL. The big issue isb
>that it hasn't imported the apachesoap namespace, therefore there's no
>definition of the apachesoap:Document type.
>
>Note that this WSDL creates a wrapper element for the input document
>(tns1:request) and the output document (impl:processRequestReturn), so I
>don't think it's quite what you wanted (arbitrary input and output
>documents).  
>
>There's another problem in the WSDL -- the <wsdlsoap:body> elements should
>not include the namespace attributes.
>
>Are you using the latest build? This problem should have been fixed in the
>latest beta.
>
>Anne
>
>-----Original Message-----
>From: Dave Anderer [mailto:danderer@udel.edu] 
>Sent: Thursday, July 15, 2004 3:59 PM
>To: axis-user@ws.apache.org
>Subject: newbie .net interop question
>
>The goal is to have a simple service that can accept and return an 
>arbitrary XML document.  Environment is Axis 1.2 beta.
>
>Given a method definition:
>
>        public Document processRequest(Document request)
>
>..and a deployment descriptor:
>
>    <service name="RequestFromVendorService" style="document">
>        <requestFlow>
>           <..some handlers..>
>        </requestFlow>
>        <responseFlow>
>           <..some handlers..>
>        </responseFlow>
>      <parameter name="className" 
>value="com.abc.midtier.RequestFromVendorService" />
>      <parameter name="allowedMethods" value="processRequest" />
>    </service>
>
>This yields the following WSDL:
>
><?xml version="1.0" encoding="UTF-8"?>
><wsdl:definitions
>targetNamespace="http://localhost:8080/gvi/services/RequestFromVendorService
>" xmlns="http://schemas.xmlsoap.org/wsdl/"
>xmlns:apachesoap="http://xml.apache.org/xml-soap"
>xmlns:impl="http://localhost:8080/gvi/services/RequestFromVendorService"
>xmlns:intf="http://localhost:8080/gvi/services/RequestFromVendorService"
>xmlns:tns1="http://midtier.abc.com"
>xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
>xmlns:xsd="http://www.w3.org/2001/XMLSchema">
><!--WSDL created by Apache Axis version: 1.2beta
>Built on Mar 31, 2004 (12:47:03 EST)-->
> <wsdl:types>
>  <schema elementFormDefault="qualified"
>targetNamespace="http://midtier.abc.com"
>xmlns="http://www.w3.org/2001/XMLSchema">
>   <element name="request" type="apachesoap:Document"/>
>  </schema>
>  <schema elementFormDefault="qualified"
>targetNamespace="http://localhost:8080/gvi/services/RequestFromVendorService
>" xmlns="http://www.w3.org/2001/XMLSchema">
>   <element name="processRequestReturn" type="apachesoap:Document"/>
>  </schema>
>
> </wsdl:types>
>
>   <wsdl:message name="processRequestResponse">
>
>      <wsdl:part element="impl:processRequestReturn"
>name="processRequestReturn"/>
>
>   </wsdl:message>
>
>   <wsdl:message name="processRequestRequest">
>
>      <wsdl:part element="tns1:request" name="request"/>
>
>   </wsdl:message>
>
>   <wsdl:portType name="RequestFromVendorService">
>
>      <wsdl:operation name="processRequest" parameterOrder="request">
>
>         <wsdl:input message="impl:processRequestRequest"
>name="processRequestRequest"/>
>
>         <wsdl:output message="impl:processRequestResponse"
>name="processRequestResponse"/>
>
>      </wsdl:operation>
>
>   </wsdl:portType>
>
>   <wsdl:binding name="RequestFromVendorServiceSoapBinding"
>type="impl:RequestFromVendorService">
>
>      <wsdlsoap:binding style="document"
>transport="http://schemas.xmlsoap.org/soap/http"/>
>
>      <wsdl:operation name="processRequest">
>
>         <wsdlsoap:operation soapAction=""/>
>
>         <wsdl:input name="processRequestRequest">
>
>            <wsdlsoap:body namespace="http://midtier.abc.com"
>use="literal"/>
>
>         </wsdl:input>
>
>         <wsdl:output name="processRequestResponse">
>
>            <wsdlsoap:body
>namespace="http://localhost:8080/gvi/services/RequestFromVendorService"
>use="literal"/>
>
>         </wsdl:output>
>
>      </wsdl:operation>
>
>   </wsdl:binding>
>
>   <wsdl:service name="RequestFromVendorServiceService">
>
>      <wsdl:port binding="impl:RequestFromVendorServiceSoapBinding"
>name="RequestFromVendorService">
>
>         <wsdlsoap:address
>location="http://localhost:8080/gvi/services/RequestFromVendorService"/>
>
>      </wsdl:port>
>
>   </wsdl:service>
>
></wsdl:definitions>
>
>
>All looks good to me, and WSDL2Java handles it nicely.  However, should 
>someone using the .net toolset be able to take this WSDL, automatically 
>generate their required proxies, and use them?  I've got a report from a 
>user who says their tools either die on this, or report no errors, but 
>generate no proxies.
>
>
>  
>



Mime
View raw message