|
You'll have to do it during a post process. You can
do it manually, you can use XSLT, or you can write a little XML processing
program to do it.
Now that I look at the WSDL file again, I see that
the default namespace is already defined, so you don't need to add it. All you
need to do is strip off all the namespace qualifiers.
I'm surprised that you would have to do this,
though. Microsoft's XML processor is reasonably complete, and it certainly knows
how to process namespaces. Are you sure that the error isn't caused by something
else?
Anne
----- Original Message -----
Sent: Tuesday, July 29, 2003 3:17
PM
Subject: RE: wsdl
Anne,
We
are currently using a Microsoft Soap client written in _javascript_. Somehow it
doesn't like the names space in the WSDL file. That's why we want to remove
the namespace.
Could you let us know in which file you change
the xmlns="http://schemas.xmlsoap.org/wsdl/" and how do we remove the wsdl from the generated WSDL file? Is
it a post process that we have to do after the WSDL file is
generated?
Thanks,
Abhijat
Can you explain why this matters to
you?
Axis uses namespace qualifiers for all elements
in the WSDL file. This is a good practice. If you want to remove the wsdl:
namespace qualifier, you'll need to do it manually. To do so, you must add a
default namespace definition:
and you must remove the wsdl: qualifiers from
the wsdl elements.
Anne
----- Original Message -----
Sent: Monday, July 28, 2003 7:00
PM
Subject: wsdl
On publishing services i get a wsdl file of the type
shown below with "wsdl" word is appened at the start of the each node. The
deployment descriptor is something like this.
<service name="TestService"
provider="java:RPC"> <parameter
name="className"
value="com.bdna.pl.testing.Testing"/>
<parameter name="allowedMethods" value="getTestMessage"
/>
</service> </deployment>
Is there a way that when the TestService is published no "wsdl" is
appended at the start of each node.
<?xml version="1.0"
encoding="UTF-8" ?>
- <wsdl:definitions
targetNamespace="http://localhost:8080/axis/services/TestService"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:impl="http://localhost:8080/axis/services/TestService"
xmlns:intf="http://localhost:8080/axis/services/TestService"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:message name="getTestMessageRequest" />
- <wsdl:message name="getTestMessageResponse">
<wsdl:part name="getTestMessageReturn" type="xsd:string"
/>
</wsdl:message>
- <wsdl:portType name="Testing">
- <wsdl:operation name="getTestMessage">
<wsdl:input message="impl:getTestMessageRequest" name="getTestMessageRequest" />
<wsdl:output message="impl:getTestMessageResponse" name="getTestMessageResponse" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="TestServiceSoapBinding" type="impl:Testing">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="getTestMessage">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="getTestMessageRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:8080/axis/services/TestService" use="encoded"
/>
</wsdl:input>
- <wsdl:output name="getTestMessageResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:8080/axis/services/TestService" use="encoded"
/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="TestingService">
- <wsdl:port binding="impl:TestServiceSoapBinding" name="TestService">
<wsdlsoap:address location="http://localhost:8080/axis/services/TestService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
thanks
abhijat
|