JSTL c:foreach不遍历集合对象

时间:2013-08-16 06:09:29

标签: jsf jsf-2 primefaces jstl el

我以前使用ui.repeat迭代一个集合并创建一些主要表面 但是,当时我无法将动态id设置为datatables.So做了一些研究之后我想把它改成c:foreach并尝试。但是,现在我的数据表没有生成因为我相信build c:forach运行的时间,集合为空。 我正在使用jstl 1.2。 在填充列表后我尝试了以下内容。

    HttpServletRequest origRequest=(HttpServletRequest)FacesContext.getCurrentInstance        ().getExternalContext().getRequest();
    origRequest.setAttribute("dataList",dataList);

然后在我的xhtml中我尝试了这个:items =“$ {dataList}” 但似乎没有任何工作。请帮助。

编辑:功能要求

我将在运行时使用ui生成多个数据表:repeat / p:datalist / c:foreach等。 然后从我的后端我想访问这些数据表中的每一个,因为我想使用primefaes dataexporter将它们写在pdf文件中。为此,我想将动态ID分配给datatables.But我无法使它工作

1 个答案:

答案 0 :(得分:0)

来自评论:

  

将jstl名称空间更改为xmlns后:c =“http://java.sun.com/jstl/core”;现在它进入循环

这表明你实际使用JSTL 1.0,而不是JSTL 1.1 / 1.2,与你在问题中所说的相反。换句话说,您的运行时类路径是一团糟。在这种情况下,一个常见的启动者错误是他们有任意下载standard.jar文件,因为JSTL中的某些东西不起作用,他们看到它在一个完全过时或资源不足的地方被提到(我真诚希望你有其他人roseindia.net在你一生的互联网黑名单中,对吗?)。使用JSTL 1.2时,应该拥有此文件。

仔细阅读our JSTL wiki page中的版本概述和安装说明,了解正确的下载链接和正确的方法。