私は 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 が同じように機能しないようです。
私は何が欠けていますか?
ありがとう、ショーン