I'm getting the following exception.
HTTP Status 500 - Request processing failed; nested exception is java.lang.ClassCastException: java.lang.Integer cannot be cast to java.math.BigInteger
with the following code
Emploee.Contoller.java
@RequestMapping("searchEmployee") public ModelAndView searchEmployee(@RequestParam("searchName") String searchName) { logger.info("Searching the Employee. Employee Names: "+searchName); List<Employee> employeeList = employeeService.getAllEmployees(searchName); return new ModelAndView("employeeList", "employeeList", employeeList); } EmployeeDAOImpl.java
@Override public List<Employee> getAllEmployees(String employeeName) { String query = "SELECT e.* FROM Employees e WHERE e.name like '%"+ employeeName +"%'"; List<Object[]> employeeObjects = hibernateUtil.fetchAll(query); List<Employee> employees = new ArrayList<Employee>(); for(Object[] employeeObject: employeeObjects) { Employee employee = new Employee(); long id = ((BigInteger) employeeObject[0]).longValue(); String name = (String) employeeObject[1]; int age = (int) employeeObject[2]; int admin = (int) employeeObject[3]; boolean isAdmin=false; if(admin==1) isAdmin=true; Date createdDate = (Date) employeeObject[4]; employee.setId(id); employee.setName(name); employee.setAge(age); employee.setAdmin(isAdmin); employee.setCreatedDate(createdDate); employees.add(employee); } System.out.println(employees); return employees; } at this line
long id = ((BigInteger) employeeObject[0]).longValue(); Does anybody have any idea?
long id = Long.parseLong(String.valueOf(employeeObject[0]))? this should work,