Hi, you had to use userName instead name in your jsp file.
Regards, Frank -----Ursprüngliche Nachricht----- Von: hhlow [mailto:[EMAIL PROTECTED] Gesendet: Mittwoch, 7. Januar 2004 12:16 An: [EMAIL PROTECTED] Betreff: No getter method for property Hi, I am getting javax.servlet.jsp.JspException: No getter method for property name of bean user. Please advise. Clement <struts-config> <!-- ======================================== Form Bean Definitions --> <form-beans> <!-- Logon Form offers user to enter credentials to sing in --> <form-bean name="logonForm" type="logon.LogonForm"/> </form-beans> <!-- ================================= Global Exception Definitions --> <global-exceptions> <!-- sample exception handler <exception key="expired.password" type="app.ExpiredPasswordException" path="/changePassword.jsp"/> end sample --> </global-exceptions> <!-- =================================== Global Forward Definitions --> <global-forwards> <forward name="logon" path="/logon/Logon.do"/> <forward name="logoff" path="/Welcome.do"/> <!-- Default forward to "Welcome" action --> <!-- Demonstrates using index.jsp to forward --> <forward name="welcome" path="/Welcome.do"/> </global-forwards> <!-- =================================== Action Mapping Definitions --> <action-mappings> <!-- Default "Welcome" action --> <!-- Forwards to Welcome.jsp --> <action path="/Welcome" type="org.apache.struts.actions.ForwardAction" parameter="/pages/Welcome.jsp"/> <action path="/logon/Logon" type="org.apache.struts.actions.ForwardAction" parameter="/pages/logon/Logon.jsp"/> <!-- LogonSubmit action --> <action path="/logon/LogonSubmit" type="logon.LogonAction" name="logonForm" scope="request" validate="true" input="/pages/logon/Logon.jsp"> <forward name="userpage" path="/pages/user/User.jsp"/> </action> </action-mappings> <!-- ===================================== Controller Configuration --> <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/> <!-- ================================ Message Resources Definitions --> <message-resources parameter="resources.application"/> <!-- ======================================= Plug Ins Configuration --> <!-- ========== Tiles plugin =================== --> <plug-in className="org.apache.struts.tiles.TilesPlugin" > <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" /> <set-property property="moduleAware" value="true" /> <set-property property="definitions-parser-validate" value="true" /> </plug-in> <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/> </plug-in> </struts-config> User.java package logon; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionError; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; /** * Form bean for the user profile page. This form has the following fields, * with default values in square brackets: * <ul> * <li> <b>password</b> - Entered password value * <li> <b>username</b> - Entered username value * </ul> * * [EMAIL PROTECTED] Liu Xiaoxing *created December 18, 2003 *modified December 29, 2003 [EMAIL PROTECTED] $Revision: 1.1 $ $Date: 2003/12/29 $ */ public final class User extends ActionForm { // ------------------------------------------------ Instance Variables /** * User Id. */ private int userId = 0; /** * User Name. */ private String userName = null; /** * Password. */ private String userPass = null; /** * Full Name. */ private String fullName = ""; /** * Organisation. */ private String organisation = ""; /** * Email. */ private String email = "test"; /** * Phone. */ private String phone = ""; // ------------------------------------------------------ Properties /** * Return the password. * [EMAIL PROTECTED] The password value */ public String getUserPass() { return (this.userPass); } /** * Set the password. * [EMAIL PROTECTED] password The new password */ public void setUserPass(String userPass) { this.userPass = userPass; } /** * Return the username. * [EMAIL PROTECTED] The username value */ public String getUserName() { return (this.userName); } /** * Set the username. * [EMAIL PROTECTED] username The new username */ public void setUserName(String userName) { this.userName = userName; } /** * Return the name. * [EMAIL PROTECTED] The name value */ public String getFullName() { return (this.fullName); } /** * Set the name. * [EMAIL PROTECTED] name The new name */ public void setFullName(String fullName) { this.fullName = fullName; } /** * Return the organisation. * [EMAIL PROTECTED] The organisation value */ public String getOrganisation() { return (this.organisation); } /** * Set the organisation. * [EMAIL PROTECTED] organisation The new organisation */ public void setOrganisation(String organisation) { this.organisation = organisation; } /** * Return the email. * [EMAIL PROTECTED] The email value */ public String getEmail() { return (this.email); } /** * Set the email. * [EMAIL PROTECTED] email The new email */ public void setEmail(String email) { this.email = email; } /** * Return the phone. * [EMAIL PROTECTED] The phone value */ public String getPhone() { return (this.phone); } /** * Set the phone. * [EMAIL PROTECTED] phone The new phone */ public void setPhone(String phone) { this.phone = phone; } // -------------------------------------------------- Public Methods /** * Reset all properties to their default values. * [EMAIL PROTECTED] mapping The mapping used to select this instance [EMAIL PROTECTED] request The servlet request we are processing */ public void reset(ActionMapping mapping, HttpServletRequest request) { setUserName(null); setUserPass(null); } /** * Ensure that both fields have been input. * [EMAIL PROTECTED] mapping The mapping used to select this instance [EMAIL PROTECTED] request The servlet request we are processing [EMAIL PROTECTED] Description of the Return Value */ public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { ActionErrors errors = new ActionErrors(); if ((userName == null) || (userName.length() < 1)) { errors.add("username", new ActionError("errors.username.required")); } if ((userPass == null) || (userPass.length() < 1)) { errors.add("password", new ActionError("errors.password.required")); } return errors; } } User.jsp <%@ taglib uri="/tags/struts-html" prefix="html" %> <%@ taglib uri="/tags/struts-logic" prefix="logic" %> <%@ taglib uri="/tags/struts-bean" prefix="bean" %> <html:html locale="true"> <head> <title>Database</title> <html:base/> </head> <body bgcolor="white"> <h1 align="center"><font face="ARIAL" color="#003399"> Database </font></h1> <hr/> <logic:present name="user"> <font face="SANS-SERIF" color="#CC3300"> Welcome <bean:write name="user" property="userName"/>! <bean:write name="user" property="userPass"/> </font></logic:present> <hr/> <p/> <p/> <ul> <font face="TOHOMA"> <uli> <html:link forward="logoff">Sign out</html:link> </uli> </font> </ul> </body> </html:html> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]