I’m afraid that I’m still a
bit confused by this. I’ll try to be more specific.
- What is the purpose
of adding the <wsdlFile> element to my service’s .wsdd file?
Is it
simply a performance enhancement as I believe Raul stated?
- What is the procedure
to use if I have a pre-existing class that I wish to expose as
a
WebService? I took the class and ran it thru the java2WSDL tool. I’ve
used the
resulting WSDL as my starting point to build the WSDL that I desire. The
main
differences have to do with the “return” elements. In other
words, The generated
response is something like this:
<getOrderResponse>
<getOrderReturn>
…..
</getOrderReturn>
</getOrderResponse>
In “my” wsdl I define my response to be
<getOrderResponse>
<Order>
…..
</Order>
</getOrderResponse>
Thanks
From:
[EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Anne Thomas Manes
Sent: Friday, October 14, 2005
2:35 PM
To: [email protected]
Subject: Re: overriding
autogenerated wsdl
In other words, if you
want the service to generate messages that conform to your WSDL, then you
should generate your service from the WSDL.
Anne
On 10/14/05, Flores, Raul <[EMAIL PROTECTED]> wrote:
Specifying the wsdl file in the server-config.wsdd is only a way of
providing the wsdl without axis having to regenerate the wsdl every time
it is requested.
This in not intended to alter the format of the services operations (as
defined by deploy.wsdd).
Raul Flores
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto: [EMAIL PROTECTED]]
Sent: Friday, October 14, 2005 11:22 AM
To: [email protected]
Subject: overriding autogenerated wsdl
I've been trying to override the default wsdl that is produced for my
webService. I have a wrapped/doc/literal style
webservice. The
contents of the .wsdd follow:
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="MyService style="wrapped"
use="literal">
<parameter name="className"
value="com.mycompany.MyService"/>
<parameter name="scope"
value="application"/>
<parameter name="allowedMethods"
value="getOrder"/>
<wsdlFile>/myservice.wsdl</wsdlFile>
<beanMapping xmlns:dsns="http://myservice.mycompany.com"
qname="dsns:Order"
languageSpecificType="java:com.mycompany.myservice.Order"/>
</deployment>
I've placed the in the ${TOMCAT_HOME}\axis\WEB-INF\classes directory.
I've verified that the server-config.wsdd has been updated properly.
When I access the service wsdl via:
http://localhost:8080/axis/services/myService?wsdl
I see the wsdl correctly. I then invoke my service and monitor the
traffic using TCPMon. The SOAP response appears to be formatted in
accordance to the "autogenerated wsdl" rather than the wsdl I've
specified. Any help would be greatly appreciated.
thanks,
Gregg
btw: I'm using axis 1.2.1 and tomcat 5.0