如何记录合同最后(通过jaxb schemagen)webservice?

时间:2012-06-20 20:27:53

标签: java web-services java-ee jaxb schemagen

我开发了一个网络服务,理所当然我的用户希望看到文档。我更喜欢简单地使用javadoc注释或使用显式注释来记录我的代码,例如:

@XmlComment("This is used to [blah blah]")
@XmlElement(name = "referenceDate", namespace = NAMESPACE, type = Date.class)
public void setReferenceDate(Date referenceDate) {
    this.referenceDate = referenceDate;
}

/**
 * This is used to [blah blah]
 */
@XmlElement(name = "referenceDate", namespace = NAMESPACE, type = Date.class)
public void setReferenceDate(Date referenceDate) {
    this.referenceDate = referenceDate;
}

上述内容不受支持,如下所示:

  • JAXB-273 - 2006请求从注释中创建xs:documentation元素
  • JAXB-369 - 2007请求从评论
  • 制作xs:documentation元素
  • SO-470001 - “你不能这样做”stackoverflow问题

所以我理解我不能使用上述内容来评论我的服务。但是......当然还有一种非手动方式可以做到这一点。我必须手工制作我的所有XML吗?如果 是答案,为什么没有更多关注将此功能引入JAXB?对于企业级Web服务来说,似乎是完全强制的,对吗?

1 个答案:

答案 0 :(得分:0)

你是对的很糟糕。这些天最关注的是契约优先,所以我猜它没有被优先考虑。您可以使用XSLT从单独的XML文档中将注释添加到WSDL中。不如从Java代码生成它,但总比没有好。这是一篇古老的帖子http://www.gridlab.org/WorkPackages/wp-5/guide/wsdltips.html