web-dev-qa-db-ja.com

クラスにプロパティがありません

私の実体では:

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

私はそのエラーを本当に理解していません。説明してもらえますか?ありがとう

8

このエラーは、プロパティに対して正しいゲッターとセッターが見つからなかったことを意味します。ゲッターとセッターの正しい構文は次のとおりです。

public int gettId() {
    return tId;
}

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

よくわからない場合は、ゲッターとセッターに常にコード生成を使用してください。

特定の規則 に関心がある場合、ゲッターとセッターはTIdではなくtIdに関連します。

14
bjedrzejewski