private void removeOrder() { int restId = (Integer) request.getSession().getAttribute("restId"); Session se = HibernateSessionFactory.getSession(); Orderinfo curOrder = (Orderinfo) se.load(Orderinfo.class, curOrderId); Set<Ordercourses> curOrderset = curOrder.getOrdercourseses(); Transaction trans = se.beginTransaction(); trans.begin(); Iterator<Ordercourses> curOrderIt = curOrderset.iterator(); while (curOrderIt.hasNext()) { Ordercourses curOrderCourse = curOrderIt.next(); if (curOrderCourse.getCourseinfo().getRestaurantinfo().getRestaurantId() == restId) se.delete(curOrderCourse); } if (curOrder.getOrdercourseses() == null || curOrder.getOrdercourseses().isEmpty()) se.delete(curOrder); trans.commit(); HibernateSessionFactory.closeSession(); RestOrder.getRestList().remove(listIndex); }