在我的实体中:
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(unique=true, nullable=false)
private int tId;
....
public int getTId() {
return this.tId;
}
public void setTId(int tId) {
this.tId = tId;
}
我的JSF页面中的代码:
<ui:repeat value="#{techCat.techsOfCat}" var="post">
<h:outputText value="#{post.getTId()}"/>
...
</ui:repeat>
结果很好。但如果我编码:
<ui:repeat value="#{techCat.techsOfCat}" var="post">
<h:outputText value="#{post.tId}"/>
...
</ui:repeat>
我遇到了一个错误:
value="#{post.tId}": The class 'model.Technology' does not have the property 'tId'.
我真的不明白那个错误。你能跟我解释一下吗?感谢
答案 0 :(得分:14)
错误表示无法为您的媒体资源找到正确的getter和setter。 getter和setter的正确语法应为:
public int gettId() {
return tId;
}
public void settId(int tId) {
this.tId = tId;
}
如果您不确定 - 请始终为您的getter和setter使用代码生成。
如果您对specific convention感兴趣,那么您的getter和setter将与TId
而非tId
相关。