1

我在fuse ESB(基于karaf)下使用MOXy。尝试创建 JAXBContext 的新实例时出现错误:不支持属性“eclipselink-oxm-xml”。

我已将包含以下内容的 jaxb.properties 文件: javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory 放在与域类相同的包中。并且成功加载了 xml-bindings 文件。

Map<String, Object> properties = new Hashmap<>(1);
properties.put(JAXBContextProperties.OXM_METADATA_SOURCE, Utils.class.getResource("xml-bindings.xml").getPath());
JAXBContext jc = JAXBContext.newInstance(clazz, properties); 

主要问题是,当我运行使用 eclipse 中的 xml-bindings.xml 属性和 JUnit 测试的函数时,一切正常,但是当我在 OSGi 环境中运行它并调用此函数时,我收到错误:属性“eclipselink -oxm-xml”不受支持。

所以也许有人可以给我线索,出了什么问题,为什么它无法在 OSGi 中创建新的 jaxbcontext?

编辑: System.getProperty("javax.xml.bind.context.factory") 返回 org.eclipse.persistance.jaxb.JAXBContextFactory,所以我猜 jaxb 属性文件已加载。

4

0 回答 0