在Struts 2中从textfield转换为property时,getter不起作用

时间:2017-06-27 17:27:22

标签: properties nullpointerexception struts2 textfield

我在Struts 2中有一个定义为

的文本字段
<s:textfield key="fName" label="First Name" readonly="true" />

并且吸气剂工作正常,但由于它应该只是一个显示字段,我将其更改为

<div> <br /> First Name: <s:property value="fName" /></div>

现在getter获取NullPointerException。

有没有办法规避这个错误?感谢

Person.java中的getter:

public String getFName() {
 return fName;
}

堆栈跟踪:

test.model.Person.getFName(Person.java:43)
test.service.PersonDAO.update(PersonDAO.java:182)
test.action.UpdatePersonInfo.execute(UpdatePersonInfo.java:46)

1 个答案:

答案 0 :(得分:0)

你必须小心选择类变量名,在你的情况下是fName。随着新版本的struts 2使用更新版本的OGNL,一些getter / setter无法正常工作。这是因为较新的OGNL遵循Java bean规范。所以你的吸气剂将是

 public String getfName() {
        return fName;
    }