geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Petersson <petersson.pe...@gmail.com>
Subject Re: NoClassDefFoundError org/w3c/dom/ElementTraversal
Date Tue, 04 Aug 2015 18:27:24 GMT
Thank you Kevin

That would probably work for most use cases but I was hoping there was a 
filtering / import-package negation solution as that seem more isolated 
and robust also in my case the war may be deployed in other containers 
so having to complicate the build system is no ideal, anyway thanks for 
the input.

Come to think of it maybe using non-overridable-classes element in 
geronimo-war.xml could force the use of the war files xerces and 
xml-apis classes.

Anyone having suggestions/ideas is welcome to shim in

best regards Peter Petersson

On 08/01/2015 11:37 PM, Kevin Huntly wrote:
>
> I've always been advised that the xerces and xalan jars should go in 
> jre/lib/endorsed. Maybe give that a try (after removing them from the 
> war) and see if it works?
>
> ________________________________________________
> Kevin Huntly
> 79 Aurora Drive
> Cheektowaga, NY 14215
> Email: kmhuntly@gmail.com <mailto:kmhuntly@gmail.com>
> Cell: 716/341-5669
> LinkedIn: http://www.linkedin.com/in/kevinhuntly
> ________________________________________________
> -----BEGIN GEEK CODE BLOCK-----
> Version: 1.0
> GCS/IT d+ s a C++ UL+++$ P+(++) L+++ E---
> W+++ N+ o K(+) w--- O- M-- V-- PS+ PE Y(+)
> PGP++(+++) t+ 5-- X-- R+ tv+ b++  DI++ D++
> G++ e(+) h--- r+++ y+++*
> ------END GEEK CODE BLOCK------
>
> On Aug 1, 2015 14:23, "Peter Petersson" <petersson.peter@gmail.com 
> <mailto:petersson.peter@gmail.com>> wrote:
>
>     Hi
>
>     I am hitting a class loader problem that I need some help
>     resolving (maybe someone already have resolved this).
>
>     I get the following stack trace (snippet, more below) when I try
>     to deploy my war file in geronimo 3.0.1 (tomcat7)
>
>     2015-08-01 01:10:28,646 ERROR [[/xxxxxxx]] Exception starting
>     filter LiftFilter
>     java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
>
>     I have found that the problem is related to reading Lifts
>     resource/props/*.props files (a plain text file containing key
>     value pair strings).
>     I have come to this conclusions as disabling the properties files
>     by emptying the content, removing the files or changing the .props
>     extension to something like *.props.disabled then the war file
>     will install and load as expected (although without the properties
>     loaded).
>
>     In my war files /WEB-INF/lib/ I have **xerces:xercesImpl:2.11.0**
>     and **xml-apis:xml-apis:1.4.01** and the
>     org/w3c/dom/ElementTraversal class is in the xml-apis jar but when
>     running in Geronimo this class is not reached for some reason
>     (running in vanilla jetty works). I have tried some filter options
>     in geronimo-web.xml but so far have not found a working setup.
>
>     Anny ideas on how to resolve this ?
>
>     best regards Peter Petersson
>
>     java.lang.NoClassDefFoundError: org/w3c/dom/ElementTraversal
>         at java.lang.ClassLoader.defineClass1(Native Method)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
>         at
>     org.apache.geronimo.hook.equinox.GeronimoClassLoader.defineClass(GeronimoClassLoader.java:213)
>         at
>     org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:601)
>         at
>     org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:567)
>         at
>     org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:490)
>         at
>     org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:478)
>         at
>     org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:458)
>         at
>     org.apache.geronimo.hook.equinox.GeronimoClassLoader.findLocalClass(GeronimoClassLoader.java:237)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
>         at
>     org.apache.geronimo.hook.equinox.GeronimoClassLoader.loadClass(GeronimoClassLoader.java:85)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>         at
>     org.apache.xerces.parsers.AbstractDOMParser.startDocument(Unknown
>     Source)
>         at
>     org.apache.xerces.impl.dtd.XMLDTDValidator.startDocument(Unknown
>     Source)
>         at
>     org.apache.xerces.impl.XMLDocumentScannerImpl.startEntity(Unknown
>     Source)
>         at
>     org.apache.xerces.impl.XMLVersionDetector.startDocumentParsing(Unknown
>     Source)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
>     Source)
>         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown
>     Source)
>         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
>         at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
>         at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown
>     Source)
>         at java.util.XMLUtils.getLoadingDoc(XMLUtils.java:102)
>         at java.util.XMLUtils.load(XMLUtils.java:74)
>         at java.util.Properties.loadFromXML(Properties.java:868)
>         at
>     net.liftweb.util.Props$$anonfun$7$$anonfun$apply$5.apply(Props.scala:309)
>         at
>     net.liftweb.util.Props$$anonfun$7$$anonfun$apply$5.apply(Props.scala:304)
>         at net.liftweb.common.Full.map(Box.scala:806)
>         at net.liftweb.util.Props$$anonfun$7.apply(Props.scala:304)
>         at net.liftweb.util.Props$$anonfun$7.apply(Props.scala:300)
>         at scala.Function1$$anonfun$andThen$1.apply(Function1.scala:55)
>         at scala.collection.immutable.Stream.flatMap(Stream.scala:493)
>         at net.liftweb.util.ListHelpers$class.first(ListHelpers.scala:139)
>         at net.liftweb.util.Helpers$.first(Helpers.scala:34)
>         at net.liftweb.util.Props$.props$lzycompute(Props.scala:300)
>         at net.liftweb.util.Props$.props(Props.scala:278)
>         at net.liftweb.util.Props$.getBool(Props.scala:64)
>         at net.liftweb.util.Props$.getBool(Props.scala:65)
>         at net.liftweb.http.LiftServlet.<init>(LiftServlet.scala:921)
>         at net.liftweb.http.LiftServlet.<init>(LiftServlet.scala:48)
>         at
>     net.liftweb.http.provider.HTTPProvider$class.bootLift(HTTPProvider.scala:104)
>         at net.liftweb.http.LiftFilter.bootLift(LiftServlet.scala:1063)
>         at
>     net.liftweb.http.provider.servlet.ServletFilterProvider$class.init(ServletFilterProvider.scala:40)
>         at net.liftweb.http.LiftFilter.init(LiftServlet.scala:1063)
>         at
>     org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
>         at
>     org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
>         at
>     org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
>         at
>     org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4746)
>         at
>     org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5399)
>         at
>     org.apache.geronimo.tomcat.GeronimoStandardContext.access$201(GeronimoStandardContext.java:121)
>         at
>     org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:723)
>         at
>     org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48)
>         at
>     org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
>         at
>     org.apache.geronimo.tomcat.GeronimoStandardContext.startInternal(GeronimoStandardContext.java:459)
>         at
>     org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>         at
>     org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
>         at
>     org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
>         at
>     org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
>         at
>     org.apache.geronimo.tomcat.TomcatContainer.addContext(TomcatContainer.java:310)
>         at
>     org.apache.geronimo.tomcat.TomcatWebAppContext.doStart(TomcatWebAppContext.java:567)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:1000)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:271)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstance.start(GBeanInstance.java:555)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanDependency.attemptFullStart(GBeanDependency.java:110)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanDependency.addTarget(GBeanDependency.java:145)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanDependency$1.running(GBeanDependency.java:119)
>         at
>     org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.fireRunningEvent(BasicLifecycleMonitor.java:176)
>         at
>     org.apache.geronimo.kernel.basic.BasicLifecycleMonitor.access$300(BasicLifecycleMonitor.java:45)
>         at
>     org.apache.geronimo.kernel.basic.BasicLifecycleMonitor$RawLifecycleBroadcaster.fireRunningEvent(BasicLifecycleMonitor.java:254)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:301)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:105)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java:127)
>         at
>     org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:569)
>         at
>     org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:386)
>         at
>     org.apache.geronimo.kernel.config.ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java:466)
>         at
>     org.apache.geronimo.kernel.config.KernelConfigurationManager.start(KernelConfigurationManager.java:225)
>         at
>     org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:710)
>         at
>     org.apache.geronimo.kernel.config.SimpleConfigurationManager.startConfiguration(SimpleConfigurationManager.java:689)
>         at
>     org.apache.geronimo.console.configmanager.ConfigManagerPortlet.processAction(ConfigManagerPortlet.java:164)
>         at
>     org.apache.pluto.driver.services.container.FilterChainImpl.doFilter(FilterChainImpl.java:117)
>         at
>     org.apache.pluto.driver.services.container.FilterChainImpl.processFilter(FilterChainImpl.java:84)
>         at
>     org.apache.pluto.driver.services.container.FilterManagerImpl.processFilter(FilterManagerImpl.java:112)
>         at
>     org.apache.pluto.container.driver.PortletServlet.dispatch(PortletServlet.java:359)
>         at
>     org.apache.pluto.container.driver.PortletServlet.doGet(PortletServlet.java:261)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>         at
>     org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:749)
>         at
>     org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:605)
>         at
>     org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:544)
>         at
>     org.apache.pluto.driver.container.DefaultPortletInvokerService.invoke(DefaultPortletInvokerService.java:233)
>         at
>     org.apache.pluto.driver.container.DefaultPortletInvokerService.action(DefaultPortletInvokerService.java:101)
>         at
>     org.apache.pluto.container.impl.PortletContainerImpl.doAction(PortletContainerImpl.java:251)
>         at
>     org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:135)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:575)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>         at
>     org.apache.geronimo.console.filter.RedirectByHashFilter.doFilter(RedirectByHashFilter.java:116)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>         at
>     org.apache.geronimo.console.filter.PlutoURLRebuildFilter.doFilter(PlutoURLRebuildFilter.java:48)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>         at
>     org.apache.geronimo.console.filter.XSSXSRFFilter.doFilter(XSSXSRFFilter.java:137)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>         at
>     org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>         at
>     org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>         at
>     org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>         at
>     org.apache.geronimo.tomcat.security.SecurityValve.invoke(SecurityValve.java:89)
>         at
>     org.apache.geronimo.tomcat.security.jacc.JACCSecurityValve.invoke(JACCSecurityValve.java:54)
>         at
>     org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:731)
>         at
>     org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:48)
>         at
>     org.apache.geronimo.tomcat.valve.ProtectedTargetValve.invoke(ProtectedTargetValve.java:53)
>         at
>     org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>         at
>     org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>         at
>     org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947)
>         at
>     org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>         at
>     org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
>         at
>     org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)
>         at
>     org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>         at org.apache.tomcat.util.net
>     <http://org.apache.tomcat.util.net>.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
>         at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:267)
>         at
>     org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:397)
>         at
>     java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>         at
>     java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         at java.lang.Thread.run(Thread.java:745)
>     Caused by: java.lang.ClassNotFoundException:
>     org.w3c.dom.ElementTraversal
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:467)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429)
>         at
>     org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417)
>         at
>     org.apache.geronimo.hook.equinox.GeronimoClassLoader.loadClass(GeronimoClassLoader.java:85)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
>         ... 131 more
>     2015-08-01 01:10:28,647 ERROR [StandardContext] Error filterStart
>
>
>


Mime
View raw message