众所周知

时间:2012-04-11 15:42:23

标签: xml spring jaxb cxf maven-jaxb2-plugin

我的Java RESTful Web服务(Spring 3.1.1和CXF 2.5.2)在每次请求时打印到stdout

SystemId Unknown; Line #-1; Column #-1; class X nor any of its super class is known to this context.

有时多次。请注意,不会抛出任何异常,也不会记录有关错误的消息。有问题的类是由来自XSD的maven-jaxb2-plugin生成的,其中包含其他定义。用于定义数据类型的元素是

<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")

如何修复此问题并清除错误消息?

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。

在我解组XML之前,我通过XSL转换运行它。我给处理器错误的目标上下文。难怪上课不为人所知!