有什么方法可以使用JAX-WS从Javadoc生成WSDL文档吗?

时间:2009-11-17 02:18:36

标签: java documentation wsdl jax-ws wsgen

我希望有一种延伸可以做到这一点(尽管我认为我的希望是愚蠢的乐观)。

   /**
     * <p>
     * Gets the {@link ResultObject} given the identifier. The following
     * fields are not available for some users and will contain a null value:
     * </p>
     * 
     * <ul>
     * <li>{@code resultObject.comment}</li>
     * <li>{@code resultObject.anotherObject.actionById}</li>
     * <li>{@code resultObject.anotherObject.actionByName}</li>
     * </ul>
     * 
     * <p>
     * The {@code daysInPurgatory} value will be {@code -1} when not
     * applicable
     * </p>
     * 
     * @param requestUser
     *            the user initiating the request
     * @param identifier
     *            the id of the ResultObject
     * @return the {@link ResultObject} or {@code null} if none exists
     * @throws SomeException
     *             if the {@code identifier} is {@code null}
     */
    @WebMethod
    @WebResult(name = "resultObject")
    public ResultObject getResultObjectById(
     @WebParam(name = "RequestUser", header = true, partName = "RequestUser") final String requestUser,
     @WebParam(name = "identifier") final Long identifier)
     throws SomeException;

谢谢, LES2

3 个答案:

答案 0 :(得分:10)

您可以查看Enunciate。可以使用it's Maven plugin从Javadoc注释生成静态HTML文件。这适用于SOAP(即JAX-WS)和REST(即JAX-RS)端点。

有趣的读物:

生产示例:

答案 1 :(得分:7)

您不是唯一一个寻找生成WSDL文档的方法(请参阅Generating WSDL documentation from Javadoc主题)但是,AFAIK,没有标准 JAX-WS方式来执行此操作。

现在,或许可以查看JBWS-1850中提到的JBoss专有注释@Documentation,当使用Java-&gt; WSDL方法时,它会生成2.9 Javadoc Customization部分中描述的jaxws:binding个工件。好。这不完全是你要求的,但它可能会给你一些想法。

无论如何,我想这需要提供你自己的WSDLGeneratorExtension来扩展wsgen并生成所需的WSDL。

答案 2 :(得分:0)

在一个项目中,我们发布了许多WSDL。对于每个Web服务,我们都公开了一个WS方法“getDocumentationURL()”。此方法返回指向从SEI生成的JavaDoc的链接。 JavaDoc位于可访问的Intranet服务器上。