List<Category> categories = (List<Category>) ServiceUtils.executeService(userView,
Collection<Category> categories = (Collection<Category>) ServiceUtils.executeService(userView,
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,            HttpServletResponse response) throws NumberFormatException, FenixFilterException,            FenixServiceException {        IUserView userView = SessionUtils.getUserView(request);        Integer executionPeriodID = Integer.valueOf(request.getParameter("executionPeriodId"));        ExecutionPeriod executionPeriod = (ExecutionPeriod) ServiceUtils.executeService(userView,                "ReadDomainExecutionPeriodByOID", new Object[] { executionPeriodID });        List<Category> categories = (List<Category>) ServiceUtils.executeService(userView,                "ReadAllDomainObjects", new Object[] { Category.class });        List<Category> monitorCategories = (List<Category>) CollectionUtils.select(categories, new Predicate(){            public boolean evaluate(Object object) {                Category category = (Category) object;                return category.getCode().equals("MNL") || category.getCode().equals("MNT");            }});                List<TeacherWithCreditsDTO> teachersCredits = new ArrayList<TeacherWithCreditsDTO>();        for (Department department : userView.getPerson().getManageableDepartmentCredits()) {            List<Teacher> teachers = department.getTeachers(executionPeriod.getBeginDate(),                    executionPeriod.getEndDate());            for (Teacher teacher : teachers) {                double managementCredits = teacher.getManagementFunctionsCredits(executionPeriod);                double serviceExemptionsCredits = teacher.getServiceExemptionCredits(executionPeriod);                int mandatoryLessonHours = 0;                Category category = teacher.getCategoryForCreditsByPeriod(executionPeriod);                if(!monitorCategories.contains(category)){                    mandatoryLessonHours = teacher.getMandatoryLessonHours(executionPeriod);                }                TeacherService teacherService = teacher                        .getTeacherServiceByExecutionPeriod(executionPeriod);                CreditLineDTO creditLineDTO = new CreditLineDTO(executionPeriod, teacherService,                        managementCredits, serviceExemptionsCredits, mandatoryLessonHours);                TeacherWithCreditsDTO teacherWithCreditsDTO = new TeacherWithCreditsDTO(teacher,                        category, creditLineDTO);                teachersCredits.add(teacherWithCreditsDTO);            }        }        String sortBy = request.getParameter("sortBy");        request.setAttribute("teachersCreditsListSize", teachersCredits.size());        Iterator orderedTeacherCredits = orderList(sortBy, teachersCredits.iterator());        request.setAttribute("departmentsList", userView.getPerson().getManageableDepartmentCredits());        request.setAttribute("teachersCreditsList", orderedTeacherCredits);        request.setAttribute("executionPeriodId", executionPeriodID);        return mapping.findForward("show-teachers-credits-list");    }