Author: husted Date: Thu Aug 3 08:29:33 2006 New Revision: 428424 URL: http://svn.apache.org/viewvc?rev=428424&view=rev Log: WW-1353 First pass on wildcard refactoring.
Added: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/ChangePassword.java struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/MainMenu.java struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/ struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp (contents, props changed) - copied, changed from r428209, struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/Logon.jsp Removed: struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/Logon.jsp Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Create.java struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Update.java struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/subscription/Support.java struts/struts2/trunk/apps/mailreader/src/main/resources/struts.xml struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration.jsp struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/subscription.jsp Added: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/ChangePassword.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/ChangePassword.java?rev=428424&view=auto ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/ChangePassword.java (added) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/ChangePassword.java Thu Aug 3 08:29:33 2006 @@ -0,0 +1,10 @@ +package mailreader2; + +/** + * <p> + * When implemented, allow guest to change password, + * given correct credentials. + * </p> + */ +public class ChangePassword extends MailreaderSupport { +} Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java (original) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/Constants.java Thu Aug 3 08:29:33 2006 @@ -130,6 +130,14 @@ */ public static final String PASSWORD_MISMATCH_FIELD = "password"; + /** + * <p/> + * A static message in case message resource is not loaded. + * </p> + */ + public static final String ERROR_INVALID_WORKFLOW = + "ERROR: Action is being executed out of sequence!"; + // ---- Log Messages ---- /** Added: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/MainMenu.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/MainMenu.java?rev=428424&view=auto ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/MainMenu.java (added) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/MainMenu.java Thu Aug 3 08:29:33 2006 @@ -0,0 +1,9 @@ +package mailreader2; + +/** + * <p> + * Provide access to MailreaderSupport properties. + * </p> + */ +public class MainMenu extends MailreaderSupport { +} Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Create.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Create.java?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Create.java (original) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Create.java Thu Aug 3 08:29:33 2006 @@ -16,7 +16,11 @@ // trust but verify boolean creating = Constants.CREATE.equals(getTask()); creating = creating && isCreating(); - if (!creating) return ERROR; + if (!creating) { + addActionError("registration/Create: "); + addActionError(Constants.ERROR_INVALID_WORKFLOW); + return ERROR; + } User user = findUser(getUsername(), getPassword()); boolean haveUser = (user != null); Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Update.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Update.java?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Update.java (original) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/registration/Update.java Thu Aug 3 08:29:33 2006 @@ -19,7 +19,11 @@ boolean creating = Constants.CREATE.equals(getTask()); creating = creating && isCreating(); // trust but verify - if (creating) return ERROR; + if (creating) { + addActionError("registration/Update: "); + addActionError(Constants.ERROR_INVALID_WORKFLOW); + return ERROR; + } // FIXME: Any way to call the RegisrationSave validators from here? String newPassword = fixNull(getPassword()); String confirmPassword = fixNull(getPassword2()); Modified: struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/subscription/Support.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/subscription/Support.java?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/subscription/Support.java (original) +++ struts/struts2/trunk/apps/mailreader/src/main/java/mailreader2/subscription/Support.java Thu Aug 3 08:29:33 2006 @@ -2,6 +2,7 @@ import com.opensymphony.xwork2.Preparable; import mailreader2.MailreaderSupport; +import mailreader2.Constants; import java.util.LinkedHashMap; import java.util.Map; @@ -56,6 +57,8 @@ sub = findSubscription(); if (sub == null) { + addActionError("find (Subscription): "); + addActionError(Constants.ERROR_INVALID_WORKFLOW); return ERROR; } Modified: struts/struts2/trunk/apps/mailreader/src/main/resources/struts.xml URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/resources/struts.xml?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/resources/struts.xml (original) +++ struts/struts2/trunk/apps/mailreader/src/main/resources/struts.xml Thu Aug 3 08:29:33 2006 @@ -56,83 +56,94 @@ result="expired"/> </global-exception-mappings> - <!-- - <action name="*" class="mailreader2.{1}"> - <result name="input">/pages/{1}.jsp</result> + <!-- different result --> + + <action name="Logoff" class="mailreader2.Logoff"> + <result type="redirect-action">Welcome</result> </action> - <action name="*/*" class="mailreader2.{1}.{2}"> - <result name="input">/pages/{1}.jsp</result> - <result type="redirect-action">MainMenu</result> + <action name="Logon"> + <result>/pages/registration/Retrieve.jsp</result> + <interceptor-ref name="guest"/> </action> - <action name="*/Create" class="mailreader2.{1}.Create"> - <result name="input">/pages/{1}.jsp</result> - <result type="redirect-action">MainMenu</result> - <interceptor-ref name="user-submit" /> + <action name="Tour"> + <result>/pages/Tour.html</result> + <interceptor-ref name="guest"/> </action> - <action name="*/Update" class="mailreader2.{1}.Update"> - <result name="input">/pages/{1}.jsp</result> - <result type="redirect-action">MainMenu</result> - <interceptor-ref name="user-submit" /> + <action name="subscription/Save" class="mailreader2.subscription.Save"> + <result name="input">/pages/subscription.jsp</result> + <result type="redirect-action">registration/Input</result> + <interceptor-ref name="user-submit"/> </action> - <action name="*/Save" class="mailreader2.{1}.Save"> - <result name="input">/pages/{1}.jsp</result> + <!-- different security --> + + <action name="MainMenu" class="mailreader2.MainMenu"> + <result>/pages/MainMenu.jsp</result> + </action> + + <action name="registration/Create" class="mailreader2.registration.Create"> + <result name="input">/pages/registration.jsp</result> <result type="redirect-action">MainMenu</result> - <interceptor-ref name="user-submit" /> + <interceptor-ref name="guest-submit"/> </action> - --> + <!-- different result and different security --> - <action name="ChangePassword"> - <result name="input">/pages/ChangePassword.jsp</result> + <action name="registration/Input" class="mailreader2.registration.Input"> + <result>/pages/registration.jsp</result> + <interceptor-ref name="guest" /> </action> - <action name="Logoff" class="mailreader2.Logoff"> - <result type="redirect-action">Welcome</result> - </action> + <!-- different input, result, and security --> - <action name="Logon"> - <result>/pages/Logon.jsp</result> + <action name="registration/Retrieve" class="mailreader2.registration.Retrieve"> + <result name="input">/pages/registration/Retrieve.jsp</result> + <result type="redirect-action">MainMenu</result> <interceptor-ref name="guest"/> </action> - <action name="MainMenu" class="mailreader2.MailreaderSupport"> - <result>/pages/MainMenu.jsp</result> + <!-- different result (wild) --> + + <action name="*/Delete" class="mailreader2.{1}.Delete"> + <result>/pages/{1}.jsp</result> </action> - <action name="Tour"> - <result>/pages/Tour.html</result> - <interceptor-ref name="guest"/> + <action name="*/Edit" class="mailreader2.{1}.Edit"> + <result>/pages/{1}.jsp</result> </action> + <action name="*/Input" class="mailreader2.{1}.Input"> + <result>/pages/{1}.jsp</result> + </action> + + <!-- Why doesn't this match * --> + <!-- Unable to instantiate Action, mailreader2.Welcome., defined for 'Welcome' in namespace '/'mailreader2.Welcome. --> <action name="Welcome" class="mailreader2.Welcome"> <result>/pages/Welcome.jsp</result> <interceptor-ref name="guest"/> </action> - <action name="registration/Update" class="mailreader2.registration.Update"> - <result name="input">/pages/registration.jsp</result> - <result type="redirect-action">MainMenu</result> - </action> + <!-- default wildcards --> - <action name="registration/Create" class="mailreader2.registration.Create"> - <result name="input">/pages/registration.jsp</result> + <action name="*/*" class="mailreader2.{1}.{2}"> + <result name="input">/pages/{1}.jsp</result> <result type="redirect-action">MainMenu</result> - <interceptor-ref name="guest-submit"/> + <interceptor-ref name="user-submit" /> </action> - <action name="registration/Input" class="mailreader2.registration.Input"> - <result>/pages/registration.jsp</result> + <action name="*" class="mailreader2.{1}"> + <result>/pages/{1}.jsp</result> <interceptor-ref name="guest"/> </action> - <action name="registration/Retrieve" class="mailreader2.registration.Retrieve"> - <result name="input">/pages/Logon.jsp</result> - <result type="redirect-action">MainMenu</result> - <interceptor-ref name="guest"/> + <!-- matched by wildcards + + <action name="registration/Update" class="mailreader2.registration.Update"> + <result name="input">/pages/registration.jsp</result> + <result type="redirect-action">mailreader2.MainMenu</result> </action> <action name="subscription/Delete" class="mailreader2.subscription.Delete"> @@ -154,6 +165,18 @@ </result> <interceptor-ref name="user-submit"/> </action> + + <action name="ChangePassword" class="mailreader2.ChangePassword"> + <result>/pages/ChangePassword.jsp</result> + <interceptor-ref name="guest"/> + </action> + + <action name="Welcome" class="mailreader2.Welcome"> + <result>/pages/Welcome.jsp</result> + <interceptor-ref name="guest"/> + </action> + + --> </package> Modified: struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration.jsp?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration.jsp (original) +++ struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration.jsp Thu Aug 3 08:29:33 2006 @@ -14,10 +14,10 @@ type="text/css"/> </head> -<body onLoad="self.focus();document.registration/Update.username.focus()"> +<body onLoad="self.focus();document.form1.username.focus()"> <s:actionerror/> -<s:form action="registration/Update" validate="true"> +<s:form id="form1" action="registration/Update" validate="true"> <s:token/> <s:hidden name="task"/> <s:if test="task == 'Create'"> Copied: struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp (from r428209, struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/Logon.jsp) URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp?p2=struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp&p1=struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/Logon.jsp&r1=428209&r2=428424&rev=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/Logon.jsp (original) +++ struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp Thu Aug 3 08:29:33 2006 @@ -9,9 +9,10 @@ type="text/css"/> </head> -<body onLoad="self.focus();document.Retrieve.username.focus()"> +<body onLoad="self.focus();document.registration/Retrieve.username.focus()"> <s:actionerror/> +<s:url id="Retrieve" action="registration/Retrieve" /> <s:form action="registration/Retrieve" validate="true"> <s:textfield label="%{getText('username')}" name="username"/> @@ -25,6 +26,6 @@ onclick="form.onsubmit=null"/> </s:form> -<jsp:include page="Footer.jsp"/> +<jsp:include page="../Footer.jsp"/> </body> </html> Propchange: struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/registration/Retrieve.jsp ------------------------------------------------------------------------------ svn:eol-style = native Modified: struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/subscription.jsp URL: http://svn.apache.org/viewvc/struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/subscription.jsp?rev=428424&r1=428423&r2=428424&view=diff ============================================================================== --- struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/subscription.jsp (original) +++ struts/struts2/trunk/apps/mailreader/src/main/webapp/pages/subscription.jsp Thu Aug 3 08:29:33 2006 @@ -17,10 +17,10 @@ type="text/css"/> </head> -<body onLoad="self.focus();document.subscription/Save.username.focus()"> +<body onLoad="self.focus();document.form1.username.focus()"> <s:actionerror/> -<s:form action="subscription/Save" validate="true"> +<s:form id="form1" action="subscription/Save" validate="true"> <s:token/> <s:hidden name="task"/> <s:label label="%{getText('username')}" name="user.username"/>