微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xml – 无法使EclipseLink MOXy工作

我是JAXB的新手,我想使用 EclipseLink MOXy更改认的名称空间前缀.我的package-info.java包含以下代码行:

@javax.xml.bind.annotation.XmlSchema (
namespace="http://namespace.mysite.com/",xmlns = { 
    @javax.xml.bind.annotation.XmlNs(prefix="myns",namespaceURI="http://namespace.mysite.com/")
},elementFormDefault = javax.xml.bind.annotation.XmlNsForm.UNQUALIFIED
)
package com.core.mymodel;

我的jaxb.properties文件包含以下行:

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

我已将eclipselink.jar添加到CLAsspATH,package-info.java和jaxb.properties文件与我的模型类位于同一个包中,但是,当我运行该程序时,我收到以下错误消息:

javax.xml.bind.JAXBException: Provider org.eclipse.persistence.jaxb.JAXBContextFactory        not found
- with linked exception:
[java.lang.classNotFoundException: org.eclipse.persistence.jaxb.JAXBContextFactory]
at javax.xml.bind.ContextFinder.newInstance(UnkNown Source)
at javax.xml.bind.ContextFinder.find(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)

我已经尝试使用EclipseLink版本2.3.0和2.0.2并仍然得到相同的错误消息.有谁碰巧知道可能是什么问题?

提前谢谢了

解决方法

您似乎根据异常消息使您的jaxb.properties文件正确:

javax.xml.bind.JAXBException: Provider org.eclipse.persistence.jaxb.JAXBContextFactory        not found
- with linked exception:
[java.lang.classNotFoundException: org.eclipse.persistence.jaxb.JAXBContextFactory]
at javax.xml.bind.ContextFinder.newInstance(UnkNown Source)
at javax.xml.bind.ContextFinder.find(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)
at javax.xml.bind.JAXBContext.newInstance(UnkNown Source)

要确认org.eclipse.persistence.jaxb.JAXBContextFactory在您的类路径上,您可以尝试:

JAXBContext jc = JAXBContextFactory.createContext("com.core.mymodel",null);

要进行更基本的确认,您可以运行:

System.out.println(org.eclipse.persistence.Version.getVersion());

欲获得更多信息

> http://bdoughan.blogspot.com/2011/05/specifying-eclipselink-moxy-as-your.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。