【发布时间】:2013-12-01 02:10:08
【问题描述】:
我正在尝试在我的 jsp 上使用存储在会话中的名为 copa 的 bean 中的信息创建打印字符串列表。
<jsp:useBean id="copa" class="Beans.CopaBean" scope="session"/>
<c:forEach var="item" items="${copa.mSelecciones}">
${item.mNombre}
</c:forEach>
我的对象 copa,实现 java.io.Serializable。它里面有一个也实现了这个接口的对象列表。
我还可以看到在 NetBeans 的变量选项卡中填充了 copa 对象,以及内部包含数据的 mSelecciones 集合..
我已经尝试了一切......从将属性 mSelecciones 公开,将名称更改为更短,调用 get 方法 getmSelecciones() 等,但我无法让我的代码打印任何文本在 html 上。
有什么帮助吗?
这是我运行代码时 HTML 中的打印输出,你可以看到我有两个对象坐在那里..只是无法迭代它们。
<c:forEach var="a" items="[Beans.SeleccionBean@7022efdf, Beans.SeleccionBean@5b252fd]">
</c:forEach>
这是我的 CopaBean 类结构:
public class CopaBean implements java.io.Serializable {
public List<SeleccionBean> mSelecciones = null;
public List<SeleccionBean> getmSelecciones() throws SQLException {
}
}
这是我的 SeleccionesBean 类结构:
public class SeleccionBean implements java.io.Serializable{
private String mNombre;
public String getmNombre() {
return mNombre;
}
}
【问题讨论】:
-
它必须完全遵循类结构。例如:如果您的列表 B 在 A 类中,则使用 class="A" 并在里面执行
-
我不太明白你的评论,我相信我正在做你所说的......或者你的意思是而不是 var="item" 我应该放类似 var="Beans.Selecciones" 的东西?
-
不,var没有问题。您可以编辑帖子以便我了解班级结构吗?试试 ${mSelecciones} 而不是 ${copa.mSelecciones}
-
已编辑,我尝试做 mSelecciones 但也没有用。
-
你试过
item.getmNombre()吗?