我正在尝试添加一个复选框到一个jsp接受条款和条件,然后再进入该网站。我一直收到关于没有getter方法的相同错误,即使我有一个getter方法,并且我没有看到任何输入错误。我不明白我错过了什么。
login.jsp
<html:checkbox property="termsCheckbox" value="true"/>LoginForm.java
public final class LoginForm extends ActionForm
{
private boolean termsCheckbox = false;
public void setTermsCheckbox(boolean termsCheckbox)
{
this.termsCheckbox = termsCheckbox;
}
public boolean isTermsCheckbox()
{
return termsCheckbox;
}
}这是我在转到JSP时得到的错误:
org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp
at line 73
73: <html:checkbox property="termsCheckbox" title="terms" value="true"/>
javax.servlet.ServletException: javax.servlet.jsp.JspException: No getter method
for property termsCheckbox of bean org.apache.struts.taglib.html.BEAN发布于 2013-12-10 22:20:49
应该是isTermsCheckbox:
public boolean isTermsCheckbox(){
return termsCheckbox;
}并获取属性值,如下所示:
<html:checkbox property="isTermsCheckbox" value="true"/>发布于 2013-12-10 22:18:13
请参阅以下内容:
Java: how to name boolean properties
像这样写你的属性语句:
<html:checkbox property="${form.termsCheckbox}" title="terms" value="true"/> 其中form是您的表单LoginForm实例。
发布于 2013-12-10 22:19:47
我不确定JSP是否是这种方式,但是有些框架需要显式的名称get或set前缀,例如setTermsCheckbox和getTermsCheckbox。试一试,看看它是否能解决问题。
https://stackoverflow.com/questions/20496829
复制相似问题