You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Ed Knutson <EK...@laughlin.com> on 2007/07/19 19:35:01 UTC
WebSphere 6.0 Sitemesh plugin issue
I am building an application using Struts 2.0.8 on a WebSphere 6.0.2.17 ND server. Another application on this server uses Webwork 2.2 with Spring and Sitemesh 2.3 and I was hoping the transition to Struts 2 would be relatively smooth. This app server uses the 1.4.2 JVM and I am using the j4 binaries.
I ran the Spring and Sitemesh plugin jars through retrotranslator. The logs show the overall system initializing properly, including Spring integration. However, I get the following error when trying to access a page:
SRVE0026E:
[Servlet Error]-[Filter [sitemesh]: Could not find required filter class - org.apache.struts2.sitemesh.TemplatePageFilter.class]:
java.lang.ClassNotFoundException: class org.apache.struts2.sitemesh.TemplatePageFilter :
java.lang.InstantiationException
at java.beans.Beans.instantiate(Beans.java:223)
at java.beans.Beans.instantiate(Beans.java:63)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager._loadFilter(WebAppFilterManager.java:315)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.loadFilter(WebAppFilterManager.java:283)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterInstanceWrapper(WebAppFilterManager.java:153)
at com.ibm.ws.webcontainer.filter.WebAppFilterManager.getFilterChain(WebAppFilterManager.java:201)
at com.ibm.wsspi.webcontainer.extension.WebExtensionProcessor.invokeFilters(WebExtensionProcessor.java:255)
[...]
This file is indeed in the retrotranslated jar which was placed in WEB-INF/lib. I also tried unjarring into WEB-INF/classes, as well as commenting out the single @Inject annotation in the source for this class and compiling it using JDK 1.4. In all cases I get the same ClassNotFoundException. For now, I replaced this section in the web.xml:
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>org.apache.struts2.sitemesh.TemplatePageFilter</filter-class>
</filter>
with this:
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>com.opensymphony.module.sitemesh.filter.PageFilter</filter-class>
</filter>
The pages then load correctly. However, my understanding is that I won't be able to access the Struts 2 context from the decorator files if I don't use the plugin. Has anyone else had this issue, or been able to run Struts 2 + Sitemesh on WebSphere 6.0?
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org