2

尝试将 a 保存List<Status>到 MongoDB(通过 Morphia),我得到这个编译时错误:

com.sun.xml.ws.spi.db.DatabindingException: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
twitter4j.Status is an interface, and JAXB can't handle interfaces.
    this problem is related to the following location:
        at twitter4j.Status
        at public java.util.List Model.TwitterJob.getStatuses()

任何的想法?非常感谢!

4

2 回答 2

3

编组有点复杂Status,因为在 Twitter4j 3.0 中StatusJSONImpl实现的类是受保护的。Status您需要覆盖该类并使其对您的类可见。

请查看以下示例以了解详细信息。

https://github.com/phstudy/Twitter4j_JAXB_example

于 2013-08-28T18:18:50.313 回答
0

您可以使用@XmlElement注解来指定接口的实现类Status

@XmlElement(type=SomeStatusImpl.class)
public List<Status> getStatuses() {
    return statuses;
}

了解更多信息

于 2013-08-28T15:05:11.640 回答