1

在 MOXy 中使用 Binder 实现时遇到问题。
这是输入 XML 文档 (input.xml)

<?xml version="1.0" encoding="utf-8"?>
<root>
  <unmapped />
</root>

现在,这里是用于将 XML 解组为 Binder 实例然后从相应的 Java 对象更新 XML 的源代码:

JAXBContext context = JAXBContext.newInstance(Input.class);

DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = documentBuilderFactory.newDocumentBuilder();
Document document = builder.parse(new File("input.xml"));

Binder<Node> binder = context.createBinder(Node.class);
Input input = (Input) binder.unmarshal(document);

binder.updateXML(input);  

最后,非常简单的 Input 类文件:

@XmlRootElement(name = "root")
public class Input {
    @XmlAnyElement
    protected Object[] elements;
}  

调用该updateXML()方法时,会抛出以下异常:

java.lang.NullPointerException
at org.eclipse.persistence.internal.jaxb.DomHandlerConverter.convertObjectValueToDataValue(DomHandlerConverter.java:97)  
4

1 回答 1

0

我们已经能够确认这个问题,看起来这将是一个非常快速的解决方案。您可以使用下面的链接来跟踪我们在此问题上的进展。


更新

EclipseLink 2.5.0 流中已检入一个修复程序,可从以下位置获取每晚下载:

我们还签入了对 EclipseLink 2.4.2 流的修复。从 2012 年 10 月 12 日开始,可以从上述位置获取每晚下载。

于 2012-10-05T14:06:26.587 回答