2015-09-26 23:30 GMT+02:00 Christopher Schultz <ch...@christopherschultz.net>:
> I'm working on a fresh project and using Struts 2 for the first time.
> I've been using Struts 1 for more than 10 years and I generally know
> my way around web applications.
>
> I just can't seem to get a fairly simple setup working. I'm intending
> to use XML-based configuration and not annotation-based configuration.

The best option is to use one of Maven's archetypes

http://struts.apache.org/docs/struts-2-maven-archetypes.html#Struts2MavenArchetypes-Quickstart

> Here's what I've got:
>
> * Struts 2.3.24.1
> * Tomcat 8.0.24
> * A simple web app
>
> My web.xml looks like this:
>   <filter>
>     <description>
>       Struts 2 action filter.
>     </description>
>     <filter-name>struts2</filter-name>
>
> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndEx
> ecuteFilter</filter-class>
>     <init-param>
>       <param-name>actionPackages</param-name>
>       <param-value>my.package.business</param-value>
> <!-- do I need this if I'm going to use XML-based config? -->

Not needed, it is useful only when using the Convention plugin

>     </init-param>
>   </filter>
>
>   <filter-mapping>
>     <filter-name>struts2</filter-name>
>     <url-pattern>/*</url-pattern>
>   </filter-mapping>
>
> My struts.xml looks like this:
>
> <?xml version="1.0" encoding="UTF-8" ?>
> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts
> Configuration 2.0//EN"
> "http://struts.apache.org/dtds/struts-2.0.dtd";>

Wrong DTD, please use the latest one

<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd";>

> <struts>
>   <constant name="struts.devMode" value="true" />
>
>   <package name="default" namespace="/" extends="struts-default">
>     <action name="list" class="my.package.business.ListAction">
>       <result>/WEB-INF/list.jsp</result>
>     </action>
>   </package>
> </struts>
>
> I have a class, my.package.business.ListAction which has a
>
>   public String execute()
>
> method. I return "success" from this method (unless an exception is
> thrown). During startup, I can see that Struts/XWork is being initialize
> d:
>
> 26-Sep-2015 17:19:32.613 FINE [localhost-startStop-1]
> com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.debug
> Loaded
> list in 'default' package:{ActionConfig //list
> (my.package.business.ListAction) - action -
> file:/path/to/deploy/webapps/ROOT/WEB-INF/classes/struts.xml:
> 9:68}
>
> When I try to access http://localhost:8080/list.action, I get a 404
> response with nothing in the logs (except the access log: request to
> /list.action resulted in a 404).
>
> I'm sure I'm missing something super simple, here. Can anyone offer a
> suggestion?

Are you sure that you have deployed your app as ROOT.war to
$TOMCAT_HOME/webapps ?


Regars
-- 
Ɓukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to