}
public ActionForward insertExecutionCourse(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws FenixActionException {
InfoExecutionCourseEditor infoExecutionCourse = null;
try {
infoExecutionCourse = fillInfoExecutionCourse(form, request);
checkInfoExecutionCourse(infoExecutionCourse);
} catch (DomainException ex) {
//ugly hack to simulate a form validator and its error messages
addActionMessageLiteral("error", request, ex.getKey());
return prepareInsertExecutionCourse(mapping, form, request, response);
}
try {
InsertExecutionCourseAtExecutionPeriod.run(infoExecutionCourse);
addActionMessage("success", request, "message.manager.executionCourseManagement.insert.success",
infoExecutionCourse.getNome(), infoExecutionCourse.getSigla(), infoExecutionCourse.getInfoExecutionPeriod()
.getExecutionPeriod().getName(), infoExecutionCourse.getInfoExecutionPeriod().getExecutionPeriod()
.getExecutionYear().getYear());
} catch (DomainException ex) {
addActionMessage("error", request, ex.getMessage(), ex.getArgs());
return prepareInsertExecutionCourse(mapping, form, request, response);
} catch (FenixServiceException ex) {