当前位置: 首页 > 知识库问答 >
问题:

CXF wsdl2java不为成员生成Javadoc

燕雨石
2023-03-14
<xsd:complexType name="baseTaxParametersEnhanced">
  <xsd:annotation>
    <xsd:documentation>
      Some type comment.
    </xsd:documentation>
  </xsd:annotation>
  <xsd:sequence>
    <xsd:element name="municipality" type="xsd:string">
      <xsd:annotation>
        <xsd:documentation>
          Some member comment.
        </xsd:documentation>
      </xsd:annotation>
    </xsd:element>
    <xsd:element name="zip" type="xsd:string" />

共有1个答案

蓬宾白
2023-03-14

不幸的是,几乎没有办法轻松地修复它。WSDL2Java使用xjc生成类。为此提出了一个老问题(JAXB-172)。你可以投赞成票。没有xjc插件可以修复这个问题。在如何使生成的类包含来自XML Schema文档的Javadoc中提到了更多关于这个问题的内容。

如上面所述,如果您能够控制WSDL/XSD文件,您可以用嵌入式定制绑定(jxb:javadoc)替换xsd:documentation。要实现这一点,您应该声明jxb命名空间,类似于:

<xsd:schema ... xmlns:jxb="http://java.sun.com/xml/ns/jaxb">

并更改类型声明:

<xsd:complexType name="baseTaxParametersEnhanced">
    <xsd:annotation>
        <xsd:appinfo>
            <jxb:class>
                <jxb:javadoc>Some type comment.</jxb:javadoc>
            </jxb:class>
        </xsd:appinfo>
    </xsd:annotation>
    <xsd:sequence>
        <xsd:element name="municipality" type="xsd:string">
            <xsd:annotation>
                <xsd:appinfo>
                    <jxb:property>
                        <jxb:javadoc>Some member comment.</jxb:javadoc>
                    </jxb:property>
                </xsd:appinfo>
            </xsd:annotation>
        </xsd:element>
        <xsd:element name="zip" type="xsd:string" />
    </xsd:sequence>
</xsd:complexType>

由于我认为不能使用XJC插件来执行这样的任务是很奇怪的(前面提到的问题中的一个评论说明了这一点),我决定尝试编写这样一个插件。

结果可以在这里找到:https://github.com/destin/xjc-javadoc-plugin

目前,它只向复杂类型的字段(而不是getter或setter)添加注释。如果有任何改进建议,我将不胜感激。当我认为它足够稳定时,我会试着把它贡献给CXF项目,这样任何人都可以很容易地使用它。

 类似资料:
  • 问题内容: 我刚刚用来为我的JPA2实体生成MetaModel。 有人可以解释为什么在这种情况下将属性标记为易失性吗? 谢谢。 问题答案: 设置静态变量的线程可能与用于访问它们的线程不同,因此需要使用修饰符在所有线程之间同步内存。 没有的情况是这样的: 在初始化JPA提供程序之前,您的线程将访问变量,并获取静态字段 JPA提供程序是从其他线程初始化的,并将静态字段设置为非空值 您的线程再次访问静态

  • 接口说明 生成邀请成员时生成链接的唯一键 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 GET /permissions/api/team/v1.0.0/generateTeamUniquekey 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 token string header 是 当前登录用户的TOKEN 响应

  • 接口说明 生成邀请成员时生成链接的唯一键 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /permissions/api/team/v1.

  • 我试图建立APK,以张贴我的请求在离子在游戏商店。但是当涉及到下面的命令时,我得到了错误: PS c:\projetos\xxx>jarsigner-verbose-sigalg sha1withrsa-digestalg sha1-keystore android.keystore platforms/android/app/build/outputs/apk/release/app-relea

  • 我试图通过visual Studio中的android绑定库将clover.aar文件绑定到xamarin。我把它归结为两个错误: “Decimal”不实现接口成员“icomparable.comapreto(对象)”

  • 问题内容: 关于域对象中生成的getter和setter方法,我有一个小问题。我想对我的源代码使用通用的样式指南。该样式指南的一部分说,我以成员的前缀“ m”开头每个类成员名称。 不幸的是,我有几个带有更多成员变量的类。我遇到的问题是我是一个非常懒惰的开发人员,并且在Eclipse中使用以下方法创建了getter和setter方法 “源”->“生成Getter和Setters”。 结果是 那不是我