0

struts2 プロジェクトで式言語と struts タグを一緒に使用すると問題が発生します。jsp ファイルからの次のコード スニペットは、私の問題を示しています。果物オブジェクトはサーブレットによって渡されます。フォームコードをコメントアウトすると、各フルーツが正しく出力されるため、エラーがサーブレットからのものではないことがわかります。

<c:forEach var="fruit" items="${fruits}">
    <c:out value="${fruit}"/>
    <s:form>
        <s:checkbox label="${fruit}"></s:checkbox>
    </s:form>
</c:forEach>

これは機能せず、「タグ ファイルの TLD または属性ディレクティブに従って、属性ラベルは式を受け入れません」というエラーが返されます。

私が疑問に思っているのは、表現言語を必要としない同様のエレガントな方法でこれを行う方法はありますか? jsp ページに struts タグを使用したいと考えています。%{fruit} も試してみましたが、うまくいきませんでした。

4

1 に答える 1

0

Strutsタグのドキュメントをもっと注意深く読むことをお勧めします。

s:checkboxラベルが式を受け入れないため、コードは失敗します。次のような単なるラベルにする必要があります

<s:checkbox label="Male" name="male" value="true" />
<s:checkbox label="Female" name="male" />

上記の例では、s:checkboxlistの方がうまくいく可能性があります。詳細については、 http://struts.apache.org/2.0.6/docs/checkboxlist.htmlを参照してください。

于 2009-07-11T04:17:22.827 に答える