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

2022-09-02 21:59:13

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

   /**
     * <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


答案 1

你可以看看Enunciate。可以使用它的Maven插件从Javadoc注释生成静态HTML文件。这适用于 SOAP(即 JAX-WS)和 REST(即 JAX-RS)端点。

有趣的阅读:

生产实例:


答案 2

你不是唯一一个寻找生成 WSDL 文档的方法的人(请参阅从 Javadoc 线程生成 WSDL 文档),但是,AFAIK,没有标准的 JAX-WS 方法来执行此操作。

现在,也许可以看看 JBWS-1850 中提到的 JBoss 专有注释,它在使用 Java->WSDL 方法时也会生成第 2.9 节 Javadoc 自定义中描述的工件。这并不完全是你所要求的,但它可能会给你一些想法。@Documentationjaxws:binding

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


推荐