I'm creating a new application from scratch and I wonder how to hendle the login correctly. What is the best practice?
-To create a base action that will always validate that the user user is logged in or; -To create a Filter that will perform the check? -Something else I don't think of right now?
I using "Spring Security" to handle user authentication and authorisation.
Since your are starting from scratch, you might want to look into Appfuse http://appfuse.org/display/APF/Home as your base system, it has user login setup and configured using Spring Security.
I recommend using interceptor "roles". It is used similarly to "roles" attribute in action tags in Struts 1.x. If you familiar with Tomcat authentication, and usage of it in Struts 1.x you should have no problem switching to Struts 2.