I tried to add documentation to a service called ApplicationClient by
providing ApplicationClient.doc.xml
It only works partially:
* The overall service documentation is ignored
* The documentation for the method is ignored
* Only the documentation for the returned data showed up.
I am using XFire 1.2.6
This is ApplicationClient.doc.xml:
<?xml version="1.0" encoding="UTF-8"?>
<service>
<documentation>The Client interface for the SOAP
interface.</documentation>
<method name="ping" parametersNumber="0">
<documentation>Ping this service.</documentation>
<return>
<documentation>current date and time</documentation>
</return>
</method>
</service>
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="myapp" xmlns:tns="myapp"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc11="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soapenc12="http://www.w3.org/2003/05/soap-encoding"
xmlns:soap11="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
- <wsdl:types>
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="myapp" elementFormDefault="qualified"
attributeFormDefault="qualified">
- <xsd:element name="ping">
<xsd:complexType />
</xsd:element>
- <xsd:element name="pingResponse">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="out" type="xsd:dateTime" nillable="true"
minOccurs="1" maxOccurs="1">
- <xsd:annotation>
<xsd:documentation>current date and time</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
- <wsdl:message name="pingResponse">
<wsdl:part name="parameters" element="tns:pingResponse" />
</wsdl:message>
- <wsdl:message name="pingRequest">
<wsdl:part name="parameters" element="tns:ping" />
</wsdl:message>
- <wsdl:portType name="ApplicationClientPortType">
<wsdl:documentation />
- <wsdl:operation name="ping">
<wsdl:documentation />
<wsdl:input name="pingRequest" message="tns:pingRequest" />
<wsdl:output name="pingResponse" message="tns:pingResponse" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="ApplicationClientHttpBinding"
type="tns:ApplicationClientPortType">
<wsdlsoap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="ping">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="pingRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
- <wsdl:output name="pingResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="ApplicationClient">
- <wsdl:port name="ApplicationClientHttpPort"
binding="tns:ApplicationClientHttpBinding">
<wsdlsoap:address
location="http://localhost:8080//services/ApplicationClient" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
As you can see "Ping this service." doesn't show up.
Klaus Scharpf