【问题标题】:Getting error while using eclipselink moxy as default jaxb impl provider with spring + camel. Works with Jaxb-RI使用 eclipselink moxy 作为 spring + camel 的默认 jaxb impl 提供程序时出错。与 Jaxb-RI 一起使用
【发布时间】:2013-08-23 14:25:55
【问题描述】:

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从相对位置导入 bean 定义 [camel-context.xml] 违规资源:ServletContext资源[/WEB-INF/spring/web-application-context.xml];嵌套异常是 org.springframework.beans.factory.BeanDefinitionStoreException:无法创建 JAXB 绑定器;嵌套异常是 javax.xml.bind.JAXBException - 有关联的例外: [java.lang.NullPointerException] 在 org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68) 在 org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:85) 在 org.springframework.beans.factory.parsing.ReaderContext.error(ReaderContext.java:76) 在 org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(DefaultBeanDefinitionDocumentReader.java:271) 在 org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.java:196) 截断。查看日志文件以获取完整的堆栈跟踪 原因:org.springframework.beans.factory.BeanDefinitionStoreException:无法创建 JAXB binder;嵌套异常是 javax.xml.bind.JAXBException - 有链接异常:

[java.lang.NullPointerException] 在 org.apache.camel.spring.handler.CamelNamespaceHandler$CamelContextBeanDefinitionParser.doParse(CamelNamespaceHandler.java:304) 在 org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser.parseInternal(AbstractSingleBeanDefinitionParser.java:85) 在 org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parse(AbstractBeanDefinitionParser.java:59) 在 org.springframework.beans.factory.xml.NamespaceHandlerSupport.parse(NamespaceHandlerSupport.java:73) 在 org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1423) 截断。查看日志文件以获取完整的堆栈跟踪 引起:javax.xml.bind.JAXBException - 有关联的例外: [java.lang.NullPointerException] 在 org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextState(JAXBContext.java:906) 在 org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextState(JAXBContext.java:840) 在 org.eclipse.persistence.jaxb.JAXBContext.(JAXBContext.java:181) 在 org.eclipse.persistence.jaxb.JAXBContextFactory.createContext(JAXBContextFactory.java:129) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 截断。查看完整堆栈跟踪的日志文件

引起:java.lang.NullPointerException 在 org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateMappings(MappingsGenerator.java:2429) 在 org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateProject(MappingsGenerator.java:246) 在 org.eclipse.persistence.jaxb.compiler.Generator.generateProject(Generator.java:188) 在 org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextState(JAXBContext.java:911) 在 org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextState(JAXBContext.java:904)

这是在尝试使用 eclipseelink 2.5.1-SNAPSHOT 版本来克服https://bugs.eclipse.org/bugs/show_bug.cgi?id=411993

【问题讨论】:

  • 您能否提供一些有关您正在使用的域模型的详细信息?
  • 问题不在于我的域 - 我遇到了 spring-camel 模型 org.apache.camel.core.xml.util.jsse.AbstractSSLContextParametersFactoryBean org.apache.camel.core.xml 的问题.util.jsse.AbstractSSLContextClientParametersFactoryBean org.apache.camel.core.xml.util.jsse.AbstractSSLContextServerParametersFactoryBean org.apache.camel.core.xml.util.jsse.AbstractBaseSSLContextParametersFactoryBean 我确实扩展了“if (descriptor != null) {. ..}" 块并在 org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateMappings() 中尝试过 - 似乎有效。
  • 您是否直接与 MOXy JAXB 交互?我正在尝试拼凑一个测试用例,我可以用它来重现您看到的异常。
  • 不,我没有直接互动。我也在这里发帖eclipse.1072660.n5.nabble.com/… - 现在更改相同似乎有效。

标签: spring eclipselink apache-camel moxy


【解决方案1】:

注意:我是EclipseLink JAXB (MOXy) 的负责人,也是JAXB (JSR-222) 专家组的成员。

更新

我已在 EclipseLink 2.5.1 和 2.6.0 流中签入了针对此问题的修复。从 2013 年 8 月 24 日开始,您将能够从以下链接下载带有此修复程序的夜间版本:


我打开了以下错误,您可以使用它来跟踪我们在此问题上的进展:

【讨论】:

  • 这个问题有解决办法吗?我可以在我的模型上添加一些注释,这样我就不会遇到这种情况吗?还是必须升级到 2.5.1?奇怪的是,这个问题只在我序列化为 Json 时发生,而不是在序列化为 XML 时发生。
猜你喜欢
  • 1970-01-01
  • 2013-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多