在我的jsf页面中,我调用了一个名为saveinsert的方法,在我的saveinsert方法中,我有以下代码:
try {
System.out.println("rchd 1");
for (Employees items : editCellItems) {
System.out.println("rchd 2");
items.setEmpId(empBean.getEmployeesId());
System.out.println("after assigning "+items.getEmployeesId());
} catch (Exception e) {
System.out.println("exception "+e.getMessage());
e.printStackTrace();
}
其中editCellItems声明为
List<Employees> editCellItems= new ArrayList<Employees>();
和empBean这样声明
Employees empBean= new Employees();
我的问题是,当我运行我的jsf页面rchd 2和代码之后,没有被调用。原因是什么呢?
确保使用List<?>
add()
方法向editCellItems
添加值。另外,当为每个循环做一个时,确保你没有添加或删除项目,否则你会得到一个Exception
。例如:
editCellItems.add(empBean);
编辑:如果你只有一个元素在你的editCellItems
,你可能不想使用列表,除非你添加更多,
如果editCellItems中没有对象,那么它将迭代for循环0次。因此,您需要先添加一些对象:
editCellItems.add(empBean);