Search code examples
jspurltomcatstruts2struts

Apache Tomcat error : The requested resource is not available


I am following this tutorial to build my first Struts2 example.

My project name (and war file also) is HelloWorld and whenever I try to access http://localhost:8080/HelloWorld/index.jsp I get

The requested resource is not available.

I have my war file in tomcat webapps directory and tomcat is running fine.

Where am I going wrong?


Solution

  • That tutorial is OLD.

    It still uses org.apache.struts2.dispatcher.FilterDispatcher , that is a deprecated filter since Struts 2.1.8.

    You need to use the new filter: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.

    Then ensure you have both the filter and the filter-mapping correctly set in your web.xml:

    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>