无法使 MOXy (JAXB) 在我的应用程序中工作



我尝试使用MOXy的ObjectGraph功能将类字段的子集封送到xml字符串中。我做了以下工作:

  1. eclipselink.jar放在类路径中
  2. 创建了一个jaxb.properties文件,具有要javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory的内容,并将其放在与我要封送或取消封送的域类相同的包中。

我在域类中编写了一个方法,该方法将字段子集封送到 xml 字符串中。我在类main()方法中调用了此方法,并得到了正确的结果。

我的应用程序位于ear文件中,域类打包在model.jar文件中。编组方法由同一 jar 文件中的服务类调用。在我部署到 WebLogic 服务器并运行使用此编组函数的函数后,我总是在以下行出现异常:

marshaller.setProperty(MarshallerProperties.OBJECT_GRAPH, "dbstring"); 

基本上我无法设置此OBJECT_GRAPH属性,也无法获得正确的编组结果。但是,如果我在model.jar运行域类,那就没问题了。

有什么想法吗?谢谢!

我们在 EclipseLink 2.5.0 中引入了对象图功能(参见:http://blog.bdoughan.com/search/label/Object%20Graphs)。EclipseLink MOXy 是 WebLogic 中默认的 JAXB 提供程序(从 12.1.1 开始,请参阅:http://blog.bdoughan.com/2011/12/eclipselink-moxy-is-jaxb-provider-in.html),但截至今天(2013 年 11 月 7 日),此版本的 EclipseLink 尚未包含在 WebLogic 的发布版本中。 以下文章将帮助您在 WebLogic 中使用较新版本的 EclipseLink。

  • http://blog.bdoughan.com/2012/10/updating-eclipselink-in-weblogic.html

相关内容

最新更新