我有一个bean类whit set / get方法,当我尝试时,我有一个JSP页面 获得一个房产:
<jsp:getProperty name="p" property="firstName"></jsp:getProperty>
并且bean中的方法命名为:getFirstName
或getfirstName
返回属性;
<jsp:getProperty name="p" property="FirstName"></jsp:getProperty>
并且bean中的方法命名为:getFirstName
或getfirstName
该属性未返回且我有以下异常:org.apache.jasper.JasperException: PWC6054: Cannot find any information on property 'FirstName' in a bean
为什么呢?我知道,对于bean规则,当我写一个属性名时,容器会尝试查找以get或set开头的getter或setter方法,然后继续显示属性名称(无论是否以首字母大写开头??? )
感谢。
答案 0 :(得分:2)
Java bean依赖于内省的命名约定,请参阅此处的规范:
http://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html
您最感兴趣的是第8.3节(PDF中的第55页)。
答案 1 :(得分:1)
不,你是谁,
创建getter和setter方法时,如果属性为private String xxxx,则将创建方法为getXxxx()和setXxxx();
因此,请在创建getter和setter方法时遵循代码约定。 这将解决问题。
因此ur属性将是小写字母,作为ur bean类中的first_name