javax.servlet.ServletException: No getter method for property logname of bean org.apache.struts.taglib.html.BEAN
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
org.apache.jsp.reguser_jsp._jspService(org.apache.jsp.reguser_jsp:92)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
======================
为什么说,发错不了 logname ===============RegUserForm.java=========
package org.cjea.Struts.example;
import javax.servlet.http.HttpServletRequest; 
import org.apache.struts.action.ActionForm; 
import org.apache.struts.action.ActionMapping; public final class RegUserForm extends ActionForm{ private String logname; 
private String password; 
private String email; public RegUserForm(){ 
logname = null; 
password = null; 
email = null; 
} public String getLogName() { 
return this.logname; 

public void setLogName(String logname) { 
this.logname = logname; 

public void setPassWord(String password) { 
this.password = password; 

public String getPassWord() { 
return this.password; 

public void setEmail(String email) { 
this.email = email; 

public String getEmail() { 
return this.email; 
} public void reset(ActionMapping mapping, HttpServletRequest request) 

logname = null; 
password = null; 
email = null; 

}

解决方案 »

  1.   

    =============RegUserAction.java=============package org.cjea.Struts.example; import javax.servlet.http.*; 
    import org.apache.struts.action.*; public final class RegUserAction extends Action 
    { public ActionForward perform(ActionMapping mapping, 
    ActionForm form, HttpServletRequest req, 
    HttpServletResponse res) 

    String title = req.getParameter("title"); 
    String password = req.getParameter("password"); 
    String email = req.getParameter("email"); 
    /* 
    取得用户请求,做相应数据库操作,略 
    */ 
    return null;

    }
    ===========struts-config.xml================<?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE struts-config PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" 
    "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
    <form-beans>
    <form-bean name="regUserForm"
    type="org.cjea.Struts.example.RegUserForm"/>
    </form-beans>
    <action-mappings>
    <action path="/regUserAction"
    type="org.cjea.Struts.example.RegUserAction"
    name="regUserForm"
    scope="request"
    validate="false">
    <forward name="failure" path="/messageFailure.jsp"/>
    <forward name="success" path="/messageSuccess.jsp"/>
    </action>
    </action-mappings>
    <message-resources parameter="resources.application"/>
    </struts-config>
    ==================
    请问那里错呀!那里配置不对呢???
      

  2.   

    ===========reguser.jsp=============<%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib uri="/WEB-INF/Struts-bean.tld" prefix="bean" %> <%@ taglib uri="/WEB-INF/Struts-html.tld" prefix="html" %> <html:html locale="true"> <head> <title>RegUser</title> <html:base/> </head> <body bgcolor="white"> <html:errors/> <html:form action="/regUserAction" focus="logname"> 
    <table border="0" width="100%"> <tr> <th align="right"> Logname: </th> <td align="left"> <html:text property="logname" size="20" maxlength="20"/> 
    </td> </tr> <tr> <th align="right"> Password: </th> <td align="left"> <html:password property="password" size="20" maxlength="20"/> 
    </td> </tr> <tr> <th align="right"> E-mail: </th> <td align="left"> <html:password property="email" size="30" maxlength="50"/> 
    </td> </tr> <tr> <td align="right"> <html:submit property="submit" value="Submit"/> </td> <td align="left"> <html:reset/> </td> </tr> </table> </html:form> </body> </html:html>
    ================================
    奇怪的是

    <html:password property="password" size="20" maxlength="20"/> 

    <html:text property="logname" size="20" maxlength="20"/> 
    删除了,就可以正常显示!请问是什么原因
      

  3.   

    javax.servlet.ServletException: No getter method for property logname of bean 回答,getter 方法为 getlogName(), 不是getlogname()
      

  4.   

    ...........
    没看明白,干吗要用req.getParameter()...
    你到底是把FormBean部署在jsp里还是通过传递请求参数获得输入。
    把JSP帖上来
      

  5.   

    回的慢了
    我认为跟方法名没关系
    Action里获得FormBean是通过把参数ActionForm强制转换成你部署的FormBean类型然后调用他的get方法来实现的
      

  6.   

    ...........
    没看明白,干吗要用req.getParameter()...
    你到底是把FormBean部署在jsp里还是通过传递请求参数获得输入。
    把JSP帖上来
    =================================reguser.jsp=============这个就是了!
      

  7.   

    private String logname; 
    private String password; 
    private String email; public RegUserForm(){ 
    logname = null; 
    password = null; 
    email = null; 
    } public String getLogName() { 
    return this.logname; 

    public void setLogName(String logname) { 
    this.logname = logname; 

    public void setPassWord(String password) { 
    this.password = password; 

    public String getPassWord() { 
    return this.password; 

    public void setEmail(String email) { 
    this.email = email; 

    public String getEmail() { 
    return this.email; 

    /////////////////////////////////////////////
    这一段,你的get,和set方法中getLogName()名字不对,属性是logname,方法就要用getLogname(),password也一样
      

  8.   

    你程序中的问题:
    1、把你对应的几个get,set方法改成这样:getLogname,setLogname,getPassword,setPassword;
    2、如果你在Action里面用req.getParameter("");从客户端来取值,你在Form里面的get,set方法其实没有用;
    3、<html:form action="regUserAction" name="regUserForm" type="org.cjea.Struts.example.RegUserForm" focus="logname" >把这几个方面改了试一下看看吧。
      

  9.   

    请提问的这位仁兄好好看看javabean的规范