Struts 2 tag does not get invoked inside the JSP result from a REST contoller 
class in Websphere 6.1.0.15
---------------------------------------------------------------------------------------------------------

                 Key: WW-2653
                 URL: https://issues.apache.org/struts/browse/WW-2653
             Project: Struts 2
          Issue Type: Bug
          Components: Dispatch Filter, Example Applications, Plugin - REST
    Affects Versions: 2.1.2, 2.1.1, 2.1.3
         Environment: windows, Websphere 6.1.0.15, application uses Struts 2, 
Spring 2.5, JP, Hibernate, Struts2-REST plugin and Sitemesh / JSP.
            Reporter: Jay
            Priority: Blocker


We have a application that uses Struts 2, Spring 2.5, JP, Hibernate, 
Struts2-REST plugin and Sitemesh / JSP. We originally used Maven 2 to build 
this project and everything worked fine in Jetty and Tomcat!
When we deployed to Websphere we had 2 major issues. 
First one is an "Unable to load config class 
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor at 
interceptor - 
wsjar:file:/C:/RAD7/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/struts2-rest-showcaseEAR.ear/struts2-rest-showcase.war/WEB-INF/lib/struts2-core-2.1.3-SNAPSHOT.jar!/struts-default.xml:145:127
 probably due to a missing jar, which might be fine if you never plan to use 
the validation interceptor" 
error even though all other interceptors get loaded and works fine. I have 
created a separate jira issue for this and it works fine if i remove this 
AnnotationValidationInterceptor from the Struts-default.xml inside 
Struts-core.jar and Struts-plugin.xml file inside rest-plugin.jar. I tried 
using 2.1.1-SNAPSHOT and 2.1.3-SNAPSHOT.

Then I got a "404- file not found" error for accessing any of the rest 
controllers that are deployed in  in websphere 6.1 from the Browser. I got a 
patch from IBM and that fixed this issue 
(http://www-1.ibm.com/support/docview.wss?uid=swg24014758)

However, now I consistently get  java.lang.reflect.InvocationTargetException at 
(com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java::118).
I can reproduce this error simply by deploying the Struts2-rest-showcase 
example application in latest Websphere 6.1.0.15.
One more interesting observation is that when I remove the struts 2 tags from 
the JSP, this last exception also goes away and everything works. In my opinion 
just the filter chaining and Struts 2 tags in jsp result  are not working with 
Websphere 6.1

I have included the full exception stack trace for your review:-

[5/21/08 10:23:30:517 EDT] 00000024 ServletWrappe I   SRVE0242I: 
[struts2-rest-showcaseEAR] [/struts2-rest-showcase] [/orders-editNew.jsp]: 
Initialization successful.
[5/21/08 10:23:30:517 EDT] 00000024 ServletWrappe E   SRVE0068E: Uncaught 
exception thrown in one of the service methods of the servlet: 
/orders-editNew.jsp. Exception thrown : java.lang.RuntimeException: 
java.lang.RuntimeException: java.lang.RuntimeException: 
java.lang.RuntimeException: java.lang.RuntimeException: 
java.lang.RuntimeException: java.lang.RuntimeException: 
java.lang.reflect.InvocationTargetException
        at 
com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:290)
        at 
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:470)
        at 
com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:508)
        at 
com.opensymphony.xwork2.inject.ContainerImpl$6.call(ContainerImpl.java:507)
        at 
com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:558)
        at 
com.opensymphony.xwork2.inject.ContainerImpl.inject(ContainerImpl.java:506)
        at 
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:50)
        at 
com.ibm._jsp._orders_2D_editNew._jspx_meth_s_form_0(_orders_2D_editNew.java:153)
        at 
com.ibm._jsp._orders_2D_editNew._jspService(_orders_2D_editNew.java:73)
        at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:87)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1074)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1009)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:118)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:771)
        at 
com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:679)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:539)
        at 
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
        at 
com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)
        at 
com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:225)
        at 
com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:278)
        at 
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:321)
        at 
org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:140)
        at 
org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
        at 
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:355)
        at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:259)
        at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:88)
        at 
com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)
        at 
com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)
        at 
com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)
        at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)
        at 
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:124)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to