知道这种情况下
问题描述:
我的Java RESTful Web服务(春季3.1.1和2.5.2 CXF)打印到stdout在每次请求知道这种情况下
SystemId Unknown; Line #-1; Column #-1; class X nor any of its super class is known to this context.
有时多次。请注意,没有发生异常或者没有关于错误的消息记录。有问题的类由包含其他定义的XSD的maven-jaxb2插件生成。用于定义数据类型的元素是
<xsd:element name="x">
<xsd:complexType>
<xsd:choice>
<xsd:element name="y" type="y" minOccurs="0" maxOccurs="unbounded"/>
</xsd:choice>
<xsd:attribute name="count" type="xsd:long" use="optional"/>
</xsd:complexType>
</xsd:element>
我有几个的XSD我编译方式,但类X是永远只与错误消息相关联。生成的类有注释
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"y"
})
@XmlRootElement(name = "x")
如何解决这个问题,摆脱错误消息的?
答
我找到了解决我的问题。
在我编组XML之前,我通过XSL转换来运行它。我给了处理器错误的目标上下文。难怪这个班级不为背景所知!
你如何构建JAXB上下文?提供您的CXF配置。在更糟糕的情况下,您可以使用['extraClass'](http://mail-archives.apache.org/mod_mbox/cxf-users/200809.mbox/%[email protected]COM%3E)属性[ 'org.apache.cxf.jaxb.JAXBDataBinding'](http://cxf.apache.org/docs/jaxb.html)。 – 2012-04-14 15:54:49