-1

我正在使用 Spring MVC,并且在 JSTL 的交叉依赖项方面遇到了很多问题。是否有从原始 jsp 中访问模型属性的有效方法?例如,我如何在不使用 JSTL 的情况下翻译这个循环?

<tbody>
    <c:forEach items="${things}" var="thing">
        <tr>
            <td><c:out value="${thing.name}"/></td>
            <td><c:out value="${thing.description}"/></td>
        </tr>
    </c:forEach>
</tbody>

我已经尝试了一些变体

<tbody>
    <% for (int i = 0; i < ${things}.length; i++ %>
        <tr>
            <td><${things[i].name}/></td>
            <td><${things[i].description}/></td>
        </tr>
    </c:forEach>
</tbody>

但我无法获得正确的语法,并且几乎网络上的每个示例都使用 JSTL。

PS 我希望因为放弃 JSTL 而受到抨击,但严重的是,这个错误是荒谬的:

java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
4

2 回答 2

3

让我优先考虑以下内容:使用 JSTL 被认为是“最佳实践”

也就是说,没有什么能阻止您使用小脚本访问模型对象。例如,您可以执行以下操作:

<%
  Foo foo = null;
  foo = (Foo)request.getAttribute("foo");
%>

但是,同样,这并不是一个真正推荐的方法。

于 2013-03-05T17:25:29.287 回答
0

最终,我最终使用了 JSTL(根据“最佳实践”)。我需要做很多排除来覆盖 Hadoop 引入的一些依赖项。这是我的排除列表:

java.lang.AbstractMethodError: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext; 抽象错误

于 2013-03-06T22:49:12.910 回答