1

Strutsフォームにリストがあります。JSPでは、次のように繰り返します。

<c:forEach items="${MyForm.types}" var="type">
    <tr>
        <td>${type.name}</td>
        <td>${type.forced}</td>
        <td>${type.receive}</td>
        <html:checkbox property="type.receive" />
    </tr>
</c:forEach>

現在、<html:checkboxは機能していません。常に次のエラーが発生します。

Caused by: javax.servlet.jsp.JspException: No getter method for property type.receive of bean org.apache.struts.taglib.html.BEAN

しかし実際には、私のフォームクラスにこのプロパティのゲッターがあります。それはこのように書かれています:

public Boolean getReceive() {
  return receive;
}

チェックボックスを外すと、上の-tagのようにプロパティを表示することもできる<td>ので、問題がどこにあるのかわかりません。

たぶん私は間違った方法でそれにアクセスしていますか?

4

3 に答える 3

0

getterメソッドは次のようになります(getではなく...):

public Boolean isCbx_uebernehmen() {
  return cbx_uebernehmen;
}

そのように動作するはずです。それでも解決しない場合は、returnデータ型をからBooleanに変更してみてくださいboolean

于 2010-06-17T11:41:35.320 に答える
0

私は今、このようにやっています:

<c:forEach items="${MyForm.testList}" var="testElement" varStatus="status">
    <html:checkbox property="testList[${status.count-1}].checkboxValue" />
</c:forEach>

この質問に感謝します。

于 2010-06-21T06:02:46.970 に答える
0

Struts アクション フォームの個々のプロパティ タイプはすべて String である必要があります。cbx_uebernehmen を String Type として定義する必要があります。

于 2010-06-17T11:34:23.693 に答える