Hi Anne,

Thanks for this, but two problems:
1. My copy of XMLSpy complains "Message part 'parameters' (in Message
echoStringRequest) - parameter intf:echoString: NS prefix does not refer
to this schema!"

But more importantly,
2. The problem still persists but nested 1 level down, 'return' still
has xmlns="":

   <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>
         <echoStringResponse xmlns="urn:LookupBorrower">
            <return xmlns="">Hello mum</return>
         </echoStringResponse>
      </soapenv:Body>
   </soapenv:Envelope> 

Richard.

> -----Original Message-----
> From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] 
> Sent: 11 March 2005 15:56
> To: axis-user@ws.apache.org
> Subject: Re: Empty namespace - again
> 
> Richard,
> 
> This is not a valid doc/literal WSDL document. You need to 
> define the WSDL differently depending on whether you want 
> rpc/encoded, rpc/literal, of doc/literal.
> 
> Here's how you should define your WSDL if you'd like to 
> create a doc/literal service conforming to the "wrapped" 
> programming convention (which offers the best 
> interoperability with .NET).
> 
> <wsdl:definitions xmlns:impl="urn:LookupBorrower"
> xmlns:intf="urn:LookupBorrower"
> xmlns:apachesoap="http://xml.apache.org/xml-soap";
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
> xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> targetNamespace="urn:LookupBorrower">
>   <wsdl:types>
>     <xsd:schema targetNamepsace="urn:LookupBorrower">
>       <xsd:element name="echoString">
>         <xsd:complexType>
>           <xsd:sequence>
>             <xsd:element name="inputString" type="xsd:string"/>
>           </xsd:sequence>
>         </xsd:complexType>
>       </xsd:element>
>       <xsd:element name="echoResponse">
>         <xsd:complexType>
>           <xsd:sequence>
>             <xsd:element name="return" type="xsd:string"/>
>           </xsd:sequence>
>         </xsd:complexType>
>       </xsd:element>
>     </xsd:schema>
>   </wsdl:types>
>   <wsdl:message name="echoStringRequest">
>      <wsdl:part name="parameters" element="intf:echoString"/>
>   </wsdl:message>
>   <wsdl:message name="echoStringResponse">
>       <wsdl:part name="parameters" element="intf:echoResponse"/>
>   </wsdl:message>
>   <wsdl:portType name="LookupBorrower">
>      <wsdl:operation name="echoString">
>         <wsdl:input message="impl:echoStringRequest"/>
>         <wsdl:output message="impl:echoStringResponse"/>
>      </wsdl:operation>
>   </wsdl:portType>
>   <wsdl:binding name="LookupBorrowerSoapBinding"
>      type="impl:LookupBorrower">
>      <wsdlsoap:binding style="document"
>         transport="http://schemas.xmlsoap.org/soap/http"/>
>      <wsdl:operation name="echoString">
>         <wsdl:input>
>             <wsdlsoap:body use="literal"/>
>         </wsdl:input>
>         <wsdl:output>
>              <wsdlsoap:body use="literal"/>
>         </wsdl:output>
>      </wsdl:operation>
>   </wsdl:binding>
>   <wsdl:service name="LookupBorrowerService">
>      <wsdl:port name="LookupBorrower"
>        binding="impl:LookupBorrowerSoapBinding">
>        <wsdlsoap:address
>          
> location="http://localhost:8080/axis/services/LookupBorrower"/>
>      </wsdl:port>
>   </wsdl:service>
> </wsdl:definitions>
> 
> 
> On Fri, 11 Mar 2005 15:37:34 -0000, Richard Wallis 
> <[EMAIL PROTECTED]> wrote:
> > Here is the whole doc.
> > 
> > For information I have tested this with all 4 possible 
> combinations of 
> > document/rpc & literal/encoded and the work fine axis to axis.  The 
> > problem is that .net doesn't like xmlns="" or encoded.
> > 
> > <wsdl:definitions xmlns:impl="urn:LookupBorrower"
> > xmlns:intf="urn:LookupBorrower"
> > xmlns:apachesoap="http://xml.apache.org/xml-soap";
> > xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/";
> > xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/";
> > xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/";
> > targetNamespace="urn:LookupBorrower">
> >         <wsdl:message name="echoStringRequest">
> >                 <wsdl:part name="inputString" type="xsd:string"/>
> >         </wsdl:message>
> >         <wsdl:message name="echoStringResponse">
> >                 <wsdl:part name="return" type="xsd:string"/>
> >         </wsdl:message>
> >         <wsdl:portType name="LookupBorrower">
> >                 <wsdl:operation name="echoString"
> > parameterOrder="inputString">
> >                         <wsdl:input 
> message="impl:echoStringRequest"/>
> >                         <wsdl:output 
> message="impl:echoStringResponse"/>
> >                 </wsdl:operation>
> >         </wsdl:portType>
> >         <wsdl:binding name="LookupBorrowerSoapBinding"
> > type="impl:LookupBorrower">
> >                 <wsdlsoap:binding style="document"
> > transport="http://schemas.xmlsoap.org/soap/http"/>
> >                 <wsdl:operation name="echoString">
> >                         <wsdl:input>
> >                                 <wsdlsoap:body use="literal"
> > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
> > namespace="urn:LookupBorrower"/>
> >                         </wsdl:input>
> >                         <wsdl:output>
> >                                 <wsdlsoap:body use="literal"
> > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
> > namespace="urn:LookupBorrower"/>
> >                         </wsdl:output>
> >                 </wsdl:operation>
> >         </wsdl:binding>
> >         <wsdl:service name="LookupBorrowerService">
> >                 <wsdl:port name="LookupBorrower"
> > binding="impl:LookupBorrowerSoapBinding">
> >                         <wsdlsoap:address 
> > location="http://localhost:8080/axis/services/LookupBorrower"/>
> >                 </wsdl:port>
> >         </wsdl:service>
> > </wsdl:definitions>
> > 
> > Regards,
> >         Richard.
> > > -----Original Message-----
> > > From: Anne Thomas Manes [mailto:[EMAIL PROTECTED]
> > > Sent: 11 March 2005 15:22
> > > To: axis-user@ws.apache.org
> > > Subject: Re: Empty namespace - again
> > >
> > > Please provide the rest of the WSDL document.
> > >
> > > Can we assume that you have defined the <return> element 
> in the WSDL?
> > >
> > > Anne
> > >
> > >
> > > On Fri, 11 Mar 2005 15:00:29 -0000, Richard Wallis 
> > > <[EMAIL PROTECTED]> wrote:
> > > > Hi,
> > > >
> > > > This combination in the WSDL used as input to wsdl2java:
> > > >
> > > >         <wsdlsoap:binding style="document" ...........
> > > >         <wsdlsoap:body  use="literal" .........
> > > >
> > > > Results in an empty namespace thus:
> > > >
> > > >       <soapenv:Body>
> > > >          <return xmlns="">Hello World</return>
> > > >       </soapenv:Body>
> > > >
> > > > Following many threads on this list it is clear that this
> > > is a problem.
> > > >
> > > > If you are trying to consume an axis service in .net it
> > > appears to be
> > > > a 'show stopper'.  I have tried use="encoded" but .net
> > > rejects it, and
> > > > also style="rpc" but still get xmlns="".
> > > >
> > > > As yet I have not been able to identify a work around for this.
> > > > Although there seems to some hints of a bug fix for this in the 
> > > > pipeline, it is still a problem in 1.2RC3.
> > > >
> > > > Questions:
> > > >         1. Is there a work around for this so that I can at
> > > least use
> > > > my axis service in .net?
> > > >
> > > >         2. Is there a fix for this that will appear in 
> the next RC?
> > > >
> > > >
> > > > Richard Wallis
> > > >
> > > >
> > >
> > >
> >
> 
> 

Reply via email to