我正在学习基于 Java EE 技术的 Netbeans 电子商务教程,我花了两天时间排除了包括数据库连接在内的所有问题并了解了 Web 应用程序的功能,现在我终于设法运行了我从 Netbeans 教程下载的整个 Web 应用程序。但是 JSTL 标签显示 ???? 有一个问题,下面的代码片段显示了它是如何实现的:
<c:forEach var="category" items="${categories}">
<c:choose>
<c:when test="${category.name == selectedCategory.name}">
<div class="categoryButton" id="selectedCategory">
<span class="categoryText">
<fmt:message key="${category.name}"/>
</span>
</div>
</c:when>
<c:otherwise>
<a href="<c:url value='category?${category.id}'/>" class="categoryButton">
<span class="categoryText">
<fmt:message key="${category.name}"/>
</span>
</a>
</c:otherwise>
</c:choose>
</c:forEach>
这是我在浏览器上运行它时的样子,运行此 Web 应用程序的服务器是 GLASSFISH:
图中带下划线的问号是 JSTL 标签,当我尝试删除标签时,问号不会出现,但我无法删除整个 for 循环。
最佳答案
这些问号来自
<fmt:message key="${category.name}"/>
当你有 ???Action???
时,这意味着你正在使用带有 Action
的 fmt:message
标签键,但在资源包中找不到 Action
键。
关于java - 为什么部署 Web 应用程序时 JSTL 标记显示为问号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13594647/