2016-12-16 75 views
1

我正在关注web开发jee的视频。程序员使用“jstl”库来做数组显示(img1)the image from the videoJstl错误(阵列显示)

但是,如果我运行我的应用程序,我会得到这一个! (图2) my page

代码:

  <c:forEach items="${model.produits}" var="p"> 
       <tr> 
        <td>${p.reference}</td> 
        <td>${p.designation}</td> 
        <td>${p.prix}</td> 
        <td>${p.quantite}</td> 
       </tr> 
      </c:forEach> 
     </table> 
    </div> 
</body> 

回答

0

的EL(表达式语言)被设置在部署描述符或JSP被忽略。

你可以看看:

  • 在JSP为<%@ page isELIgnored="true" %>和/或
  • 在部署描述符web.xml<el-ignored>true</el-ignored>

如果你发现这一点。把它变成false

The Documentation说:

每个JSP页面的EL表达式求值默认模式。 默认值根据Web应用程序的部署描述符的版本而变化。使用 Servlet 2.4描述符交付的JSP页面的默认模式用于评估EL表达式;这 自动提供了大多数应用程序所需的默认值。使用来自Servlet 2.3或之前的描述符递送的JSP页面的默认模式是忽略EL表达式;这提供了向后兼容性。

所以可以在web.xml顶部检查,如果你能找到web-app_2_3.xsd或更少,你必须在部署描述符补充一点:

<jsp-config> 
    <jsp-property-group> 
     <url-pattern>*.jsp</url-pattern> 
     <el-ignored>false</el-ignored> 
    </jsp-property-group> 
</jsp-config> 
+0

感谢您的朋友:) :) :)我添加这一行:<%@ page isELIgnored =“false”%>在jsp页面中运行正常! –

+0

我很高兴,我可以帮忙。您可以通过点击左侧的复选标记和箭头来接受并点赞答案。 –