Iterator iterator = ReportingEmp.iterator(); while (iterator.hasNext()) { EmployeeBean eb1 = (EmployeeBean)iterator.next(); EmployeeFactory empFactory = new EmployeeFactory(eb1.getType()); svEmp = empFactory.getFactoryProduct(); allocation += svEmp.getAllocation(); }