This version uses the latest 2.x Tiles version which should be
compatible with Servlets 2.4, it may be that JSPs weren't re-compiled
on redeploy, please clean up working directory/temp folder (not sure
where WS stores compiled JSPs).

And you must also update DTDs in struts.xml and tiles.xml:

https://tiles.apache.org/framework/migration/configuration.html

<!DOCTYPE tiles-definitions PUBLIC
       "-//Apache Software Foundation//DTD Tiles Configuration 2.1//EN"
       "http://tiles.apache.org/dtds/tiles-config_2_1.dtd";>


<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd";>


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

2016-07-21 16:54 GMT+02:00 R Veach <rveac...@gmail.com>:
> Hi,
> I am trying to upgrade from Struts 2.3.24 to 2.3.28.1.
> My application was working fine on the old version, but 28 is giving me an
> NoSuchMethodError when trying to load a page.
> I am using Websphere 8.5 server.
>
> This is the exception and stack trace:
> org.apache.tiles.impl.CannotRenderException: ServletException including
> path '/jsp/layout/Default-layout.jsp'.
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:692)
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:644)
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:627)
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:321)
>     at
> org.apache.struts2.views.tiles.TilesResult.doExecute(TilesResult.java:155)
>     at
> org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:191)
>     at
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:372)
>     at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:276)
>     …
>     at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
>     at
> com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:189)
>     at
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:245)
>     at
> org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
>     at
> org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:567)
>     at
> org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:81)
>     at
> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)
>     at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
>     at gov.ssa.security.SecurityFilter.doFilter(SecurityFilter.java:25)
>     at
> com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:960)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1064)
>     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3837)
>     at
> com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:304)
>     at
> com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:981)
>     at
> com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)
>     at
> com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)
>     at
> com.ibm.ws390.xmem.proxy.channel.XMemProxySRInboundConnLink.ready(XMemProxySRInboundConnLink.java:105)
>     at
> com.ibm.ws390.xmem.proxy.channel.XMemProxySRInboundChannel.processNewConnection(XMemProxySRInboundChannel.java:123)
>     at
> com.ibm.ws390.xmem.proxy.XMemProxySRCppUtilities.httpinvoke(XMemProxySRCppUtilities.java:150)
>     at
> com.ibm.ws390.orb.ServerRegionBridge.httpinvoke(ServerRegionBridge.java:213)
>     at
> com.ibm.ws390.orb.CommonBridge.getAndProcessWork(CommonBridge.java:680)
>     at
> com.ibm.ws390.orb.CommonBridge.runApplicationThread(CommonBridge.java:611)
>     at com.ibm.ws.util.ThreadPool$ZOSWorker.run(ThreadPool.java:2098)
> Caused by: org.apache.tiles.util.TilesIOException: ServletException
> including path '/jsp/layout/Default-layout.jsp'.
>     at
> org.apache.tiles.servlet.context.ServletUtil.wrapServletException(ServletUtil.java:241)
>     at
> org.apache.tiles.servlet.context.ServletTilesRequestContext.forward(ServletTilesRequestContext.java:243)
>     at
> org.apache.tiles.servlet.context.ServletTilesRequestContext.dispatch(ServletTilesRequestContext.java:222)
>     at
> org.apache.tiles.renderer.impl.TemplateAttributeRenderer.write(TemplateAttributeRenderer.java:44)
>     at
> org.apache.tiles.renderer.impl.AbstractBaseAttributeRenderer.render(AbstractBaseAttributeRenderer.java:106)
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:670)
>     at
> org.apache.tiles.impl.BasicTilesContainer.render(BasicTilesContainer.java:690)
>     ... 57 more
> Caused by: java.lang.NoSuchMethodError:
> org/apache/tiles/jsp/taglib/InsertAttributeTag.setPageContext(Ljavax/servlet/jsp/PageContext;)V
>     at
> com.ibm._jsp._Default_2D_layout._jspx_meth_tiles_insertAttribute_0(_Default_2D_layout.java:275)
>     at
> com.ibm._jsp._Default_2D_layout._jspService(_Default_2D_layout.java:117)
>     at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)
>     at
> com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
>     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:562)
>     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:255)
>     at
> com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
>     at
> com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1230)
>     at
> com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779)
>     at
> com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
>     at
> com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)
>     at
> com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)
>     at
> com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:219)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:960)
>     at
> com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1064)
>     at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1385)
>     at
> com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:194)
>     at
> org.apache.tiles.servlet.context.ServletTilesRequestContext.forward(ServletTilesRequestContext.java:241)
>     ... 62 more
>
> ` org/apache/tiles/jsp/taglib/InsertAttributeTag` is part of
> tiles-jsp-2.2.2.jar and I am including it in my workspace and EAR.
> I didn’t make any changes in any configuration files for struts 2 or tiles.
>
> My current thought is that this may be a class version conflict that struts
> upgraded to a newer version of Web/JSP that Websphere doesn’t support.
>
> Can anyone confirm this or guide me on fixing this issue?
> Thanks for any and all help.

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to