gpt4 book ai didi

java - 如何在 EclipseLink 中创建 JAXBContext?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:38:40 26 4
gpt4 key购买 nike

JAXBContext.newInstance() 方法接收带有属性的 Map 作为参数。

我应该指定哪些属性以及如何指定 JAXBContext 实例通知多个带有 xml 映射的文件?

Example展示了如何以一种在实际系统中 Not Acceptable 方式(即使用 new File(address))仅指定一个文件。我需要使用返回 URL 对象的 classLoader.getResource() 而不是这个。

谢谢!

更新:

当我尝试实例化 JAXBContext 时,我得到了这个异常(exception):

javax.xml.bind.JAXBException: property "eclipselink-oxm-xml" is not supported
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:118)
...

很明显,jaxb.properties 文件在启动时找不到。我应该把它放在哪里? (我正在使用 maven,实际上我已经尝试将其放入 /target/jaxb.properties/target/classes/jaxb.properties/target/classes/META-INF/definitions/jaxb.properties - 它靠近 xml 映射文件,/target/classes/com/myproject/experiment/jaxb.properties - 它是在试图实例化 JAXBContext 的类附近)。

最佳答案

E clipseLink JAXB (MOXy)外部绑定(bind)文件可以是以下任何一种格式(或列表格式):

  • java.io.File
  • java.io.InputStream
  • java.io.Reader
  • java.net.URL
  • javax.xml.stream.XMLEventReader
  • javax.xml.stream.XMLStreamReader
  • javax.xml.transform.Source
  • org.w3c.dom.Node
  • org.xml.sax.InputSource

要将 MOXy 用作 JAXB 提供程序,您还需要在模型类中包含一个名为 jaxb.properties 的文件,其中包含以下条目:

javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory

关于java - 如何在 EclipseLink 中创建 JAXBContext?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5274318/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com