Я получаю исключение как
java.lang.ClassCastException: com.chat.dao.model.PGUserRoles cannot be cast to com.querydsl.core.Tuple
Мой код, кажется, правильный.
JPAQuery<Tuple> query = new JPAQuery<Tuple>(entityManager);
QPGUserRoles pgUserRoles = QPGUserRoles.pGUserRoles;
List<Tuple> dataList = query
.from(pgUserRoles)
.where(isRoleName(userRolesDTO.getRoleName()),
isRoleType(userRolesDTO.getRoleType()),
isStatus(userRolesDTO.getStatus()),
isStatusNotEq()
)
.offset(offset)
.limit(limit)
.orderBy(orderByRoleIdDesc())
.fetch();
UserRolesDTO userData = null;
for (Tuple tuple : dataList) {
userData = new UserRolesDTO();
userData.setRoleId(tuple.get(pgUserRoles.roleId));
userData.setRoleName(tuple.get(pgUserRoles.roleName));
userData.setRoleType(tuple.get(pgUserRoles.roleType));
userData.setStatus(tuple.get(pgUserRoles.status));
userRoleList.add(userData);
}
Исключение выдается в строке с for
Я не знаюне понимаю, почему исключение было брошено.Tuple - это общая проекция результата запроса.И пример там doc похож на мой.Я использую версию querydsl 4.2.1.