[ 
https://issues.apache.org/struts/browse/WW-2025?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43054#action_43054
 ] 

Dmitry Kozlov commented on WW-2025:
-----------------------------------

I've tested this on jetty 6.7.1. It works without any problems.

> Action's can't be used for web.xml declarative security URL's
> -------------------------------------------------------------
>
>                 Key: WW-2025
>                 URL: https://issues.apache.org/struts/browse/WW-2025
>             Project: Struts 2
>          Issue Type: Improvement
>          Components: Dispatch Filter
>    Affects Versions: 2.0.8
>         Environment: Tomcat 5.5.23 (also present in the most recent 6.0.13 
> release), Java(TM) SE Runtime Environment (build 1.6.0-b105), S2.0.8
>            Reporter: Jon Wilmoth
>             Fix For: Future
>
>
> Using an action URI for web.xml declarative security results in a 404 "The 
> requested resource (/mywebapp/login.action) is not available message." on 
> Tomcat (both 5.5.x & 6.x).  Representative XML configs below:
> <login-config>
>         <auth-method>FORM</auth-method>
>         <form-login-config>
>             <form-login-page>/login.action</form-login-page>
>             <form-error-page>/loginFailure.action</form-error-page>
>         </form-login-config>
>     </login-config> 
> <action name="login">
>     <result>/login.jsp</result>
> </action>
>   
> Unfortunately it looks like the S2 architectural change from a Servlet to 
> Servlet Filters is the culprit.  After digging through the tomcat 5.5.23 
> (also present in the most recent 6.0.13 release) code I've come to the 
> conclusion Struts2 actions CAN NOT be used for any of the common web.xml 
> descriptor elements (form-login-page, form-error-page, welcome-file?, 
> other?).  Here's a snippet of the javadoc from 
> org.apache.catalina.core.ApplicationDispatcher's invoke method:
> * <strong>IMPLEMENTATION NOTE</strong>: This implementation assumes that no 
> filters are applied to a forwarded or included resource, because they were 
> already done for the original request.
> Since this worked in S1, I've opened this ticket as a BUG.  The workaround I 
> received on the user list of doing an HTTP meta REFRESH works, but results in 
> screen flashing (even with a refresh of 0 seconds) and a poor user 
> experience. I'd GREATLY appreciate if one of the Struts developers had a more 
> elegant workaround suggestion.  For example would it be feasible to port 
> FilterDispatcher to a servlet?

-- 
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