0

こんにちは、さまざまなプロジェクトのリスト出力用に次のコードを書きました。

<%
List<ProjektDAO> projektListe = new ArrayList<ProjektDAO>();
projektListe = ProjektDB.getAllProjekte();
for(ProjektDAO i : projektListe)
{
%> Titel: <%= i.getName() %><br>
<%  
}
%>

ここではすべてが正常に機能しています。

しかし、私の問題はこれをjstlで行うことです

次のコードを書きました。

<c:forEach items="${projektListe}" var="i">
    <p>Titel:</p> 
    <c:out value="${i.name}"></c:out> <br>
</c:forEach>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> この小さなテストコードが機能しているため、taglib と jarfiles を含めたので、これは一般的な jstl エラーではないと思います。

    <c:out value="this is a jstl Test"></c:out>

${i.name} と ${i.getName()} のどちらを記述すればよいかわかりませんが、どちらのバージョンも機能しません。

タグに何か問題があるのでしょうか?StackOverFlow や他の場所で提案が見つかりませんでした。
ご協力ありがとうございました。あいさつマックス

4

1 に答える 1

2

EL/JSTL はスコープ値でのみ機能します。サーブレットのサービス メソッド (doGet/doPost) に結果ProjektDB.getAllProjekte()をバインドできます。requestsession

サーブレットでは、

request.setAttribute("projektListe",ProjektDB.getAllProjekte());

そしてJSPでは、

<c:forEach items="${projektListe}" var="i">
    <p>Titel:</p> 
    <c:out value="${i.name}"></c:out> <br>
</c:forEach>
于 2012-10-30T05:28:03.830 に答える