As you can see struts2-tiles-plugin and struts2-core are located in different places. So your application server loads them in two different time: D:\Official\PROJECTS\D&E\Source\*DivorceAndEqualizationEAR*\struts2\struts2-tiles-plugin-2.1.8.1.jar; D:\Official\PROJECTS\D&E\Source\*DivorceAndEqualizationWeb*\WebContent\WEB-INF\lib\struts2-core-2.1.8.1.jar
You could see how EAR content takes precedence over WebContent. 2010/11/2 Satheesh Kannan A B <satheesh.kan...@hcl.com>: > Hi, > > Am trying to use tiles in my project using struts 2.1.8, everything is > working fine without tiles. But if am configured tiles, it throwing exception > as mentioned below. > The following jars are used. > struts2-core-2.1.8.1, tiles-jsp-2.0.6.\, struts2-spring-plugin-2.1.8.1, > struts2-testng-plugin-2.1.8.1, struts2-tiles-plugin-2.1.8.1, testng-5.1, > tiles-api-2.0.6, tiles-core-2.0.6, xwork-core-2.1.6, antlr-2.7.2, dwr-1.1.1, > ognl-2.7.3 > And the stack trace am getting is given below. Please suggest me to resolve > this. > > [11/2/10 12:00:44:921 IST] 00000063 XmlConfigurat I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Parsing > configuration file [struts-default.xml] > [11/2/10 12:00:45:140 IST] 00000063 XmlConfigurat I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Parsing > configuration file [struts-plugin.xml] > [11/2/10 12:00:45:186 IST] 00000063 XmlConfigurat I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Parsing > configuration file [struts.xml] > [11/2/10 12:00:45:218 IST] 00000063 BeanSelection I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Loading > global messages from com.aegon.de.web.resources.deresources > [11/2/10 12:00:45:515 IST] 00000063 StrutsSpringO I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Initializing > Struts-Spring integration... > [11/2/10 12:00:45:530 IST] 00000063 SpringObjectF I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info Setting > autowire strategy to name > [11/2/10 12:00:45:546 IST] 00000063 StrutsSpringO I > com.opensymphony.xwork2.util.logging.commons.CommonsLogger info ... > initialized Struts-Spring integration successfully > [11/2/10 12:00:47:061 IST] 00000063 XmlConfigurat W > com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn Result class > [org.apache.struts2.views.tiles.TilesResult] doesn't exist > (NoClassDefFoundError) at result-type - > wsjar:file:/D:/Official/PROJECTS/D&E/Source/DivorceAndEqualizationEAR/struts2/struts2-tiles-plugin-2.1.8.1.jar!/struts-plugin.xml:31:91, > ignoring > java.lang.NoClassDefFoundError: Error while > defining class: org.apache.struts2.views.tiles.TilesResult > This error indicates that the class: > org.apache.struts2.dispatcher.ServletDispatcherResult > could not be located while defining the class: > org.apache.struts2.views.tiles.TilesResult > This is often caused by having the class at a higher point in the classloader > hierarchy > Dumping the current context classloader hierarchy: > ==> indicates defining classloader > *** indicates classloader where the missing class could have been found > ***[0] > com.ibm.ws.classloader.compoundclassloa...@58505850 > Local ClassPath: > D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationWeb\WebContent\WEB-INF\classes;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationWeb\WebContent\WEB-INF\lib\struts2-core-2.1.8.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationWeb\WebContent\WEB-INF\lib\tiles-jsp-2.0.6.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationModel\bin;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationClient\bin;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationCommon\bin;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationDataService\bin;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationService\bin;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationWeb\WebContent > Delegation Mode: PARENT_FIRST > ==>[1] com.ibm.ws.classloader.jarclassloa...@376968824 Local Classpath: > D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\logging\log4j-1.2.16.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\castor-0.9.5.3.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\xerces.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\jdbc-se2.0.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\jndi.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\jta1.0.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\ssoclientlib.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\sso\castor-0.9.5.3-xml.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-lang-2.3.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-beanutils-1.8.2.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-collections-3.2.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-digester-2.0.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-io-1.4.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\commons\commons-validator-1.3.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.aop-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.asm-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.beans-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.context-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.core-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.expression-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.instrument-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.jdbc-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\spring\org.springframework.web-3.0.3.RELEASE.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\antlr-2.7.2.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\dwr-1.1.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\freemarker-2.3.15.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\oro-2.0.8.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\sitemesh-2.4.2.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\testng-5.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\asm-1.5.3.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\cglib-2.1_3.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\cos.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\js.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\xbean.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\util\javassist.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\ognl-2.7.3.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\struts2-junit-plugin-2.1.8.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\struts2-spring-plugin-2.1.8.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\struts2-testng-plugin-2.1.8.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\xwork-core-2.1.6.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\struts2-tiles-plugin-2.1.8.1.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\tiles-api-2.0.6.jar;D:\Official\PROJECTS\D&E\Source\DivorceAndEqualizationEAR\struts2\tiles-core-2.0.6.jar > Delegation mode: PARENT_FIRST > [2] com.ibm.ws.classloader.protectionclassloa...@1e401e4 > [3] com.ibm.ws.bootstrap.extclassloa...@5ac45ac4 > [4] org.eclipse.osgi.framework.adaptor.core.cdsbundleclassloa...@16d016d0 > [5] sun.misc.launcher$appclassloa...@2d8a2d8a > [6] sun.misc.launcher$extclassloa...@41d641d6 > ---Original exception--- > java.lang.NoClassDefFoundError: > org.apache.struts2.dispatcher.ServletDispatcherResult > at java.lang.ClassLoader.defineClassImpl(Native Method) > at java.lang.ClassLoader.defineClass(ClassLoader.java:222) > at > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:148) > at > com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:526) > at > com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java:477) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:373) > at java.lang.ClassLoader.loadClass(ClassLoader.java:561) > at > com.ibm.ws.classloader.ReloadableClassLoader.loadClass(ReloadableClassLoader.java:124) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:368) > at java.lang.ClassLoader.loadClass(ClassLoader.java:561) > at > com.opensymphony.xwork2.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:138) > at > com.opensymphony.xwork2.ObjectFactory.getClassInstance(ObjectFactory.java:96) > at > com.opensymphony.xwork2.spring.SpringObjectFactory.getClassInstance(SpringObjectFactory.java:212) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyResultType(XmlConfigurationProvider.java:519) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addResultTypes(XmlConfigurationProvider.java:490) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:446) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264) > at > org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190) > at > com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.init(FilterInstanceWrapper.java:142) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager._loadFilter(WebAppFilterManager.java:438) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.loadFilter(WebAppFilterManager.java:352) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterInstanceWrapper(WebAppFilterManager.java:214) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterChain(WebAppFilterManager.java:272) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:661) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:646) > at > com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:628) > at > com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:145) > at > com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:595) > at > com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:111) > at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129) > at > com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238) > at > com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) > at > com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433) > at > com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:93) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:274) > at > com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214) > at > com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113) > at > com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152) > at > com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213) > at > com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195) > at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) > at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194) > at > com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:741) > at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863) > at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510) > > --- end Original exception---- > > at > com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:555) > at > com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java:477) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:373) > at java.lang.ClassLoader.loadClass(ClassLoader.java:561) > at > com.ibm.ws.classloader.ReloadableClassLoader.loadClass(ReloadableClassLoader.java:124) > at > com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:368) > at java.lang.ClassLoader.loadClass(ClassLoader.java:561) > at > com.opensymphony.xwork2.util.ClassLoaderUtil.loadClass(ClassLoaderUtil.java:138) > at > com.opensymphony.xwork2.ObjectFactory.getClassInstance(ObjectFactory.java:96) > at > com.opensymphony.xwork2.spring.SpringObjectFactory.getClassInstance(SpringObjectFactory.java:212) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyResultType(XmlConfigurationProvider.java:519) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addResultTypes(XmlConfigurationProvider.java:490) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:446) > at > com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264) > at > org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111) > at > com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193) > at > com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55) > at > org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374) > at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418) > at > org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:190) > at > com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.init(FilterInstanceWrapper.java:142) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager._loadFilter(WebAppFilterManager.java:438) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.loadFilter(WebAppFilterManager.java:352) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterInstanceWrapper(WebAppFilterManager.java:214) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterChain(WebAppFilterManager.java:272) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:661) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:646) > at > com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:628) > at > com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.invokeFilters(DefaultExtensionProcessor.java:145) > at > com.ibm.ws.webcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:595) > at > com.ibm.ws.wswebcontainer.extension.DefaultExtensionProcessor.handleRequest(DefaultExtensionProcessor.java:111) > at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3129) > at > com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:238) > at > com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) > at > com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433) > at > com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:93) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:274) > at > com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214) > at > com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113) > at > com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152) > at > com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213) > at > com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195) > at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) > at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194) > at > com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:741) > at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863) > at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1510) > > [11/2/10 12:00:47:108 IST] 00000063 XmlConfigurat W > com.opensymphony.xwork2.util.logging.commons.CommonsLogger warn Result class > [org.apache.struts2.views.tiles.TilesResult] doesn't exist > (NoClassDefFoundError) at result-type - > file:/D:/Official/PROJECTS/D&E/Source/DivorceAndEqualizationWeb/WebContent/WEB-INF/classes/struts.xml:12:58, > ignoring > java.lang.NoClassDefFoundError: Error while > defining class: org.apache.struts2.views.tiles.TilesResult > This error indicates that the class: > org.apache.struts2.dispatcher.ServletDispatcherResult > could not be located while defining the class: > org.apache.struts2.views.tiles.TilesResult > This is often caused by having the class at a higher point in the classloader > hierarchy > > Thanks and Regards, > > Satheesh Kannan A B > > > DISCLAIMER: > ----------------------------------------------------------------------------------------------------------------------- > > The contents of this e-mail and any attachment(s) are confidential and > intended for the named recipient(s) only. > It shall not attach any liability on the originator or HCL or its affiliates. > Any views or opinions presented in > this email are solely those of the author and may not necessarily reflect the > opinions of HCL or its affiliates. > Any form of reproduction, dissemination, copying, disclosure, modification, > distribution and / or publication of > this message without the prior written consent of the author of this e-mail > is strictly prohibited. If you have > received this email in error please delete it and notify the sender > immediately. Before opening any mail and > attachments please check them for viruses and defect. > > ----------------------------------------------------------------------------------------------------------------------- > -- Maurizio Cucchiara --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org