001: /*
002: * $Id: LogonForm.java 471754 2006-11-06 14:55:09Z husted $
003: *
004: * Licensed to the Apache Software Foundation (ASF) under one
005: * or more contributor license agreements. See the NOTICE file
006: * distributed with this work for additional information
007: * regarding copyright ownership. The ASF licenses this file
008: * to you under the Apache License, Version 2.0 (the
009: * "License"); you may not use this file except in compliance
010: * with the License. You may obtain a copy of the License at
011: *
012: * http://www.apache.org/licenses/LICENSE-2.0
013: *
014: * Unless required by applicable law or agreed to in writing,
015: * software distributed under the License is distributed on an
016: * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
017: * KIND, either express or implied. See the License for the
018: * specific language governing permissions and limitations
019: * under the License.
020: */
021:
022: package org.apache.struts.webapp.example;
023:
024: import javax.servlet.http.HttpServletRequest;
025: import org.apache.struts.action.ActionErrors;
026: import org.apache.struts.action.ActionMessage;
027: import org.apache.struts.action.ActionForm;
028: import org.apache.struts.action.ActionMapping;
029:
030: /**
031: * Form bean for the user profile page. This form has the following fields,
032: * with default values in square brackets:
033: * <ul>
034: * <li><b>password</b> - Entered password value
035: * <li><b>username</b> - Entered username value
036: * </ul>
037: *
038: * @author Craig R. McClanahan
039: * @version $Rev: 471754 $ $Date: 2006-11-06 08:55:09 -0600 (Mon, 06 Nov 2006) $
040: */
041:
042: public final class LogonForm extends ActionForm {
043:
044: // --------------------------------------------------- Instance Variables
045:
046: /**
047: * The password.
048: */
049: private String password = null;
050:
051: /**
052: * The username.
053: */
054: private String username = null;
055:
056: // ----------------------------------------------------------- Properties
057:
058: /**
059: * Return the password.
060: */
061: public String getPassword() {
062:
063: return (this .password);
064:
065: }
066:
067: /**
068: * Set the password.
069: *
070: * @param password The new password
071: */
072: public void setPassword(String password) {
073:
074: this .password = password;
075:
076: }
077:
078: /**
079: * Return the username.
080: */
081: public String getUsername() {
082:
083: return (this .username);
084:
085: }
086:
087: /**
088: * Set the username.
089: *
090: * @param username The new username
091: */
092: public void setUsername(String username) {
093:
094: this .username = username;
095:
096: }
097:
098: // --------------------------------------------------------- Public Methods
099:
100: /**
101: * Reset all properties to their default values.
102: *
103: * @param mapping The mapping used to select this instance
104: * @param request The servlet request we are processing
105: */
106: public void reset(ActionMapping mapping, HttpServletRequest request) {
107:
108: this .password = null;
109: this .username = null;
110:
111: }
112:
113: /**
114: * Validate the properties that have been set from this HTTP request,
115: * and return an <code>ActionMessages</code> object that encapsulates any
116: * validation errors that have been found. If no errors are found, return
117: * <code>null</code> or an <code>ActionMessages</code> object with no
118: * recorded error messages.
119: *
120: * @param mapping The mapping used to select this instance
121: * @param request The servlet request we are processing
122: */
123: public ActionErrors validate(ActionMapping mapping,
124: HttpServletRequest request) {
125:
126: ActionErrors errors = new ActionErrors();
127: if ((username == null) || (username.length() < 1))
128: errors.add("username", new ActionMessage(
129: "error.username.required"));
130: if ((password == null) || (password.length() < 1))
131: errors.add("password", new ActionMessage(
132: "error.password.required"));
133:
134: return errors;
135:
136: }
137:
138: }
|