2

有异常

javax.xml.bind.UnmarshalException: unexpected element 
(uri:"", local:"ConnectorCommandType")

试图解组 xml,如下所示:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
  <ConnectorCommandType> ........ </ConnectorCommandType>

该异常基本上表示在 jaxb 上下文中找不到该元素。但是调试表明这个类在当前的 jaxb 上下文中存在并且是已知的。类 ConnectorCommandType 是从 xsd xml 作为<xs:complexType>元素生成的。

xsd中可能有错误吗?

有没有人遇到过这样的问题?有什么建议么?谢谢。

4

1 回答 1

1

解决方案取决于对以下问题的回答:

类上是否有@XmlRootElement(name="ConnectorCommandType")注释ConnectorCommandType,或者类@XmlElementDecl(name="ConnectorCommandType")中的创建方法上有注释ObjectFactory

如果答案是YES

package-info您生成的模型中有一个吗?看起来好像您的JAXB (JSR-222)实现需要一个命名空间限定的文档。就像是:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCommandType xmlns="YOUR_NAMESPACE_HERE">
     ........ 
</ConnectorCommandType>

了解更多信息

如果答案是否定的

如果ConnectorCommandType元素没有与类关联,那么您将需要使用采用类参数的解组方法之一。

于 2012-08-29T09:13:04.037 回答