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]

Reply via email to