-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Lucaz,
On 9/27/15 10:08 AM, Lukasz Lenart wrote: > 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#Struts2Ma venArchetypes-Quickstart Yeah... > I was trying to avoid using Maven, which to me has too much opaque hand-waving that I neither understand nor control. I have what I believe is a fairly simple test app at this point. I should be able to get it to work without resorting to drastic measures : ) >> 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.StrutsPrepareAn dEx >> >> 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"> Yep, I updated to this one this morning, after trying to find out the default value for the <result> "name" attribute. Still no change. >> <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.deb ug >> >> 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 ? It's not deployed as a WAR, but as webapps/ROOT (exploded WAR directory) . Thanks, - -chris -----BEGIN PGP SIGNATURE----- Comment: GPGTools - http://gpgtools.org iQIcBAEBCAAGBQJWCBMmAAoJEBzwKT+lPKRYcMEP/0nC4WGuUgnXPL9LHzdYof4J vtPX/kFId8bd22WlUbmh1Iahjh44T/cP0WbN25wigIfu14YU0HIFnGTUC3J1k8QI 8zftjbIY11N3iSnhOnxWZ6Hsjq2zChHifB0xmqVfkKs1CGcK+XqGgAc6eK+FqA42 45+dRxXvLo5N/5hZ17hLzJHMosYcbisxNPxix4PW5x7kxURkzJ8+fRNv4zL3AuFX ktqzCBOgMCi1XHi4gKi+5AcKq/ooaQojyvjn7htTGI/5fgJfU2giPOjx/y8jpz08 N6hoZBth45Kwk0GJxXSiXThs2Q9vmE6WFaDifyZ8pbs6aVMeBYEIYBPXsPHVH6Ou QB2QAkp03c+kzZZxwALLrd2ERxaVEbbX6VmmNQjX7+XDeJrBF46xJtzh5mT5kl8J bqb/+cUSeguOaUHBlpYZkkLCetHiKTNXsA57e3jvhrsrqZdeGFGtlJ8fgiRkxq+8 S9p43kp/H5FG7y0nhNfiPND8gnfE6nFPMvKM481C8ZUagQfOVe9H3lIF0r/xJPJk Yod/gUKJycZ2Chr2i2B1UDaEAF14R5XpnCNg8N8JFQQn+oyw44xPz5eWlM/GG0/j rybMFQKrrAkx65ALpDaWtBSt9Vi2GwV1y2x3rz++xwJomRbN9PPmyLR/G3yAo95k TOPgghUbBlBnJQbHRYK0 =D4sh -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org