java - 如何在JSTL中为数组指定useBean标签

标签 java jsp arraylist jstl

我试图在 bean 中传递一个数组列表,以便由 JSP 中的 JSTL foreach 进行处理。 我不知道如何为集合指定 useBean 标记,因为 tomcat 会踢回堆栈跟踪异常 java.lang.ClassCastException:java.util.ArrayList无法转换为com.business.PersonBeanModel

Servlet 像这样发送数组列表:

List<PersonBeanModel> people = ManageEmployee.getpeople();
request.setAttribute("jsppeople", people); 

JSP 包含:

<jsp:useBean id="jsppeople" scope="request" class="com.business.PersonBeanModel" />

    <c:forEach items="${jsppeople}" var="myperson">
       ${myperson.name}
    </c:forEach>

最佳答案

问题是你的jsppeople属性是 List ,不是PersonBeanModel ,这就是您在 <jsp:bean> 中尝试执行的操作:

<jsp:useBean id="jsppeople" scope="request" class="com.business.PersonBeanModel" />

因此,解决方案是删除此行并继续使用 JSTLEL .

关于java - 如何在JSTL中为数组指定useBean标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21759969/

相关文章:

java - 在Java中从ArrayList中搜索包含特定字符串的一组字符串

java - 为什么 Spring Boot hibernate OneToMany 映射子项返回 null 值?

java - Android - 传感器或监听器为空

java - 如何使用realm.io(Java/Android)递归删除记录?

java - Tomcat服务器读取JSP文件时出错

java - 将概率分配给随机枚举对象

java - Android 中的唤醒锁无法打开屏幕

java - 如何使 Java ResultSet 在我的 jsp 中可用?

xml - 使用 Tomcat 获取 web.xml 文件以在 Apache 服务器上运行

java - 您将如何交叉引用两个 ArrayList 的字符串变量以返回这些字符串的对象?