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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]