9

在我的实体中:

@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'.

我真的不明白那个错误。你能给我解释一下吗?谢谢

4

1 回答 1

17

该错误意味着无法为您的属性找到正确的 getter 和 setter。您的 getter 和 setter 的正确语法应该是:

public int gettId() {
    return tId;
}

public void settId(int tId) {
    this.tId = tId;
}

如果您不确定,请始终为您的 getter 和 setter 使用代码生成。

如果您对特定约定感兴趣,您的 getter 和 setter 将与TIdnot相关tId

于 2013-08-05T15:36:13.680 回答