Sergey Beryozkin wrote
> Hi, sorry for a delay,
> 
> I have it working with 3.1.0-SNAPSHOT (should also with 3.0.3).
> I did reproduce this error with CXF 2.7.14. A fix must've been quite 
> sensitive given that it did not make it to CXF 2.7.x.
> In general, dealing with explicit collections is problematic  IMHO for 
> JAX-RS services given that the interoperability decreases though might 
> work in some cases when diff JAX-RS stacks are used on two ends.
> 
> The explicit collections of XmlRootElement-annotated beans is supported 
> in CXF 2.7.x too, but the collections of XmlType only elements is not.
> Please try CXF 3.0.3 or, if possible, get the beans wrapping the 
> collections generated instead - this is done automatically for JAXWS but 
> not for JAX-RS. You can get JAXB generating such beans by using the 
> anonymous complex types and possibly other options...
> 
> Sergey

I tried CXF 3.0.3 and 3.0.2 with the sample and it works great. 

I tried them with my target application, but threw the error below upon war
deployment:

I'm using jaxb dependencies as shown in the attached dependency tree. The
default jaxb used by Cxf 3.0.* is 2.2.10-b140310.1920 (which failed with a
similar error) based on a post I read. The same post suggested excluding it
and manually using 2.1.14 which is what I'm using now and is failing.

thank you.





root cause 
org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected
exception parsing XML document from URL
[jndi:/localhost/iw/WEB-INF/cxf-servlet.xml]; nested exception is
java.lang.NoSuchFieldError: REFLECTION

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)

org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)

org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)

org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)

org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)

org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)

org.apache.cxf.transport.servlet.CXFServlet.createSpringContext(CXFServlet.java:151)
        org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:74)

org.apache.cxf.transport.servlet.CXFNonSpringServlet.init(CXFNonSpringServlet.java:76)

org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
        
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
        
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)

org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)

org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)

org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2441)

org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2430)

java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        java.lang.Thread.run(Thread.java:744)



root cause 
java.lang.NoSuchFieldError: REFLECTION

com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.<init>(RuntimeModelBuilder.java:93)

com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:464)

com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:310)

com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:146)

com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1169)
        
com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:147)
        sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        java.lang.reflect.Method.invoke(Method.java:606)
        javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:248)
        javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:235)
        javax.xml.bind.ContextFinder.find(ContextFinder.java:432)
        javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:637)

org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:347)

org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:345)
        java.security.AccessController.doPrivileged(Native Method)

org.apache.cxf.common.jaxb.JAXBContextCache.createContext(JAXBContextCache.java:345)

org.apache.cxf.common.jaxb.JAXBContextCache.getCachedContextAndSchemas(JAXBContextCache.java:246)

org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser.getContext(AbstractBeanDefinitionParser.java:320)

org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser.mapElementToJaxbProperty(AbstractBeanDefinitionParser.java:346)

org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser.mapElementToJaxbProperty(AbstractBeanDefinitionParser.java:293)

org.apache.cxf.configuration.spring.AbstractBeanDefinitionParser.mapElementToJaxbProperty(AbstractBeanDefinitionParser.java:270)

org.apache.cxf.transport.http.spring.HttpDestinationBeanDefinitionParser.doParse(HttpDestinationBeanDefinitionParser.java:39)

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:1438)

org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1428)

org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:195)

org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:139)

org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:108)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)

org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)

org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)

org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)

org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)

org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)

org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)

org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)

org.apache.cxf.transport.servlet.CXFServlet.createSpringContext(CXFServlet.java:151)
        org.apache.cxf.transport.servlet.CXFServlet.loadBus(CXFServlet.java:74)

org.apache.cxf.transport.servlet.CXFNonSpringServlet.init(CXFNonSpringServlet.java:76)

org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
        
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
        
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)

org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)

org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)

org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2441)

org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2430)

java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        java.lang.Thread.run(Thread.java:744)





dependencyTree.dependencyTree
<http://cxf.547215.n5.nabble.com/file/n5753011/dependencyTree.dependencyTree>  





--
View this message in context: 
http://cxf.547215.n5.nabble.com/java-lang-ClassCastException-com-sun-org-apache-xerces-internal-dom-ElementNSImpl-cannot-be-cast-to-X-tp5752756p5753011.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to