0

私は Apache Sling で JSP を作成しています。ここでは、スクリプトレットを使用してオブジェクトのリストを取得し、JSTL を使用して反復処理を行います。ただし、以下のコードでは、JSTL 内に結果が表示されません。JSTL を使用できます (

重要な部分:

<%
    AppLinkService appLinkSvc = new AppLinkService(); 
    String userId = "sean"; //TODO get from request

    List<AppLink> links = appLinkSvc.getAppLinksFromWebService(userId);
    pageContext.setAttribute("appLinkList", links);
%>
<br/>
<br/>

<c:if test="${empty appLinkList}">
    <h1>You do not have any apps.</h1>
</c:if>
<c:if test="${not empty appLinkList}">
    <c:forEach items="${appLinkList}" var="link">
        <h3>
            <a href='<c:out value="${link.linkUrl}"/>'> 
                <c:out value="${link.appName}" /> 
            </a>
        </h3>
    </c:forEach>
</c:if>

すべてのインポートが正しいことはわかっていますが (これらのエラーはすべて解決しました)、オブジェクトにアクセスできません。これと同じコード (インポートなどを含む) を単純な Tomcat Web アプリで使用していますが、Apache Sling では事情が異なることはわかっています。Sling の世界では pageContext が同じように機能しないようです。

私は何が欠けていますか?

ありがとう、ショーン

4

1 に答える 1

0

コードは私には正しく見え、問題なく動作するはずです。リンクリストにオブジェクトが含まれているかどうか試しましたか? のようにアクセスしてみてください。

<h1>Size is <%= links.size()%></h1>

HTH、(c)

于 2013-03-24T20:30:08.653 に答える