使用eclipselink moxy作为spring+camel的默认jaxb impl提供程序时出错。与Jaxb RI合作

使用eclipselink moxy作为spring+camel的默认jaxb impl提供程序时出错。与Jaxb RI合作,spring,eclipselink,apache-camel,moxy,Spring,Eclipselink,Apache Camel,Moxy,org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从相对位置[camel context.xml]导入bean定义 有问题的资源:ServletContext资源[/WEB-INF/spring/WEB应用程序context.xml];嵌套异常为org.springframework.beans.factory.BeanDefinitionStoreException:未能创建JAXB绑

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从相对位置[camel context.xml]导入bean定义 有问题的资源:ServletContext资源[/WEB-INF/spring/WEB应用程序context.xml];嵌套异常为org.springframework.beans.factory.BeanDefinitionStoreException:未能创建JAXB绑定器;嵌套的异常是javax.xml.bind.JAXBException -除此之外: [java.lang.NullPointerException] 位于org.springframework.beans.factory.parsing.FailFastProblemReporter.ErrorFailFailFastProblemReporter.java:68 位于org.springframework.beans.factory.parsing.ReaderContext.errorReaderContext.java:85 位于org.springframework.beans.factory.parsing.ReaderContext.errorReaderContext.java:76 位于org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.importBeanDefinitionResourceDefaultBeanDefinitionDocumentReader.java:271 位于org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseDefaultElementDefaultBeanDefinitionDocumentReader.java:196 截断的。有关完整的堆栈跟踪,请参阅日志文件 原因:org.springframework.beans.factory.BeanDefinitionStoreException:未能创建JAXB绑定器;嵌套的异常是javax.xml.bind.JAXBException -除此之外:

[java.lang.NullPointerException] 位于org.apache.camel.spring.handler.CamelNamespaceHandler$CamelContextBeanDefinitionParser.doParseCamelNamespaceHandler.java:304 位于org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser.parseInternalAbstractSingleBeanDefinitionParser.java:85 位于org.springframework.beans.factory.xml.AbstractBeanDefinitionParser.parseAbstractBeanDefinitionParser.java:59 位于org.springframework.beans.factory.xml.NamespaceHandlerSupport.parseNamespaceHandlerSupport.java:73 位于org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElementBeanDefinitionParserDelegate.java:1423 截断的。有关完整的堆栈跟踪,请参阅日志文件 原因:javax.xml.bind.JAXBException -除此之外: [java.lang.NullPointerException] 位于org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextStateJAXBContext.java:906 位于org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextStateJAXBContext.java:840 位于org.eclipse.persistence.jaxb.JAXBContext.JAXBContext.java:181 位于org.eclipse.persistence.jaxb.JAXBContextFactory.createContextJAXBContextFactory.java:129 在sun.reflect.NativeMethodAccessorImpl.invoke0Native方法中 截断的。有关完整的堆栈跟踪,请参阅日志文件

原因:java.lang.NullPointerException 位于org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateMappingsMappingsGenerator.java:2429 位于org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateProjectMappingsGenerator.java:246 位于org.eclipse.persistence.jaxb.compiler.Generator.generateProjectGenerator.java:188 位于org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextStateJAXBContext.java:911 位于org.eclipse.persistence.jaxb.JAXBContext$ContextPathInput.createContextStateJAXBContext.java:904

这是在尝试使用EclipseLink 2.5.1-SNAPSHOT版本时遇到的问题。

注意:我是专家组的负责人和成员

更新

我已经为EclipseLink 2.5.1和2.6.0流检查了此问题的修复程序。从2013年8月24日开始,您将能够从以下链接下载此修复程序的夜间版本:

我打开了以下bug,您可以使用它跟踪我们在该问题上的进展:


您能提供一些关于您正在使用的域模型的详细信息吗?问题不在我的域上-我面临的是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.AbstractBaseSLContextParametersFactoryBean我扩展了if描述符!=空{…}块,并在org.eclipse.persistence.jaxb.compiler.MappingsGenerator.generateMappings中进行了尝试-并且似乎有效。您是否直接与MOXy jaxb交互?我正在尝试拼凑一个测试用例,我可以用它来重现您看到的异常。不,我没有直接交互。我也在这里发布了-改变同样的方式现在似乎很有效。这个问题有解决办法吗?我可以在我的模型上添加一些注释,这样我就不会遇到这种情况吗?还是必须升级到2.5.1?奇怪的是,这个问题只发生在序列化为Json时,而不是序列化为XML时。