【问题标题】:How do I annotate associations in Grails domain classes with JAXB?如何使用 JAXB 注释 Grails 域类中的关联?
【发布时间】:2015-02-09 03:28:44
【问题描述】:

我将 Apache CXF 嵌入到我的 Grails Web 应用程序中,这样我就可以通过 SOAP 公开服务。我对框架还不是很熟悉,但我认为它能够使用任何 POJO/POGO 作为结果和/或参数,它们必须使用 JAXB 进行注释。我创建了一个演示服务,向我证实了这一点。我还从这个 StackOverflow 问题中获得了一些关于获取 Groovy and JAXB to play nice 的信息。现在,我的问题特别是关于在 Grails 域类中注释关联。我该怎么做?

在不可能的情况下,我正在考虑为我的 SOAP 服务所需的每个域类创建某种相应的 DTO。这可能不是最佳做法,但看起来还不错……是吗?

【问题讨论】:

  • 我已经尝试了链接 StackOverflow 问题的答案给出的方法。我的问题尤其是如何注释 static hasMany = [books: Book, authors: Author] 之类的属性。

标签: xml grails groovy jaxb


【解决方案1】:

我了解到,可以在 Grails 的域类中声明对任何关联的任何引用。例如:

class Book {

    static hasMany = [categories: Category]

    List categories

}

这使我可以像往常一样使用 JAXB 注释来注释声明的字段。

@XmlRootElement
@XmlAccessorType(XmlAccessType.NONE)
class Book {

    static hasMany = [categories: Category]

    @XmlElementWrapper
    @XmlElement(name='category')
    List categories

}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-05
    • 2021-02-09
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多