You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by hu...@apache.org on 2006/08/03 17:29:34 UTC

svn commit: r428424 - in /struts/struts2/trunk/apps/mailreader/src/main: java/mailreader2/ java/mailreader2/registration/ java/mailreader2/subscription/ resources/ webapp/pages/ webapp/pages/registration/

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