After several hours I have successfully deployed a very simple web service that I was able to call with a client (manually constructing the calls). When I enter the url "http://localhost/api" the Axis servlet shows the following response:
And now... Some Services
Deziro (wsdl)
doFoo
If I follow the wsdl link I get a 404. Searching around I got the vaque clue that I should do "something" with a qs:wsdl, but what I don't know. I blindly copied the 'transport' section from a Google result. Doesn't work.
I can generate the wsdl with the Ant task. I could pack this, for example, in a wsdl directory and tell the third party integrators to get the wsdl from there, but I'm not sure whether appending ?wsdl is a standard method.
Here's the server-config.wsdd, deployed in the WEB-INF directory:
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="Deziro" provider="java:RPC">
<parameter name="className" value="net.lerutte.deziro.soap.Deziro"/>
<parameter name="allowedMethods" value="*"/>
</service>
<transport name="http">
<requestFlow>
<handler type="URLMapper"/>
<handler
type="java:org.apache.axis.handlers.http.HTTPAuthHandler"/>
</requestFlow><parameter name="qs:list" value="org.apache.axis.transport.http.QSListHandler"/>
<parameter name="qs:wsdl" value="org.apache.axis.transport.http.QSWSDLHandler"/>
<parameter name="qs:method"
value="org.apache.axis.transport.http.QSMethodHandler"/>
</transport>
<transport name="local">
<responseFlow>
<handler type="LocalResponder"/>
</responseFlow>
</transport>
</deployment>web.xml (snippets):
<servlet>
<servlet-name>soap</servlet-name>
<servlet-class>org.apache.axis.transport.http.AxisServlet</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>soap</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping> <mime-mapping>
<extension>wsdl</extension>
<mime-type>text/xml</mime-type>
</mime-mapping>Thanks in advance. Maurice le Rutte.
