"EditarAula",
"EditLesson",
	public ActionForward createEditLesson(		ActionMapping mapping,		ActionForm form,		HttpServletRequest request,		HttpServletResponse response)		throws Exception {		DynaActionForm manageLessonForm = (DynaActionForm) form;		request.setAttribute("manageLessonForm", manageLessonForm);		DiaSemana weekDay =			new DiaSemana(				new Integer(					formDay2EnumerateDay(						(String) manageLessonForm.get("diaSemana"))));		Calendar inicio = Calendar.getInstance();		inicio.set(			Calendar.HOUR_OF_DAY,			Integer.parseInt((String) manageLessonForm.get("horaInicio")));		inicio.set(			Calendar.MINUTE,			Integer.parseInt((String) manageLessonForm.get("minutosInicio")));		inicio.set(Calendar.SECOND, 0);		Calendar fim = Calendar.getInstance();		fim.set(			Calendar.HOUR_OF_DAY,			Integer.parseInt((String) manageLessonForm.get("horaFim")));		fim.set(			Calendar.MINUTE,			Integer.parseInt((String) manageLessonForm.get("minutosFim")));		fim.set(Calendar.SECOND, 0);		InfoRoom infoSala = new InfoRoom();		infoSala.setNome((String) manageLessonForm.get("nomeSala"));		ActionErrors actionErrors =			checkTimeIntervalAndWeekDay(inicio, fim, weekDay);		if (actionErrors.isEmpty()) {			InfoRoom infoRoom = new InfoRoom();			infoRoom.setCapacidadeNormal(new Integer(0));			infoRoom.setCapacidadeExame(new Integer(0));			InfoLesson infoLessonToCreateOrEdited = new InfoLesson();			infoLessonToCreateOrEdited.setDiaSemana(weekDay);			infoLessonToCreateOrEdited.setInicio(inicio);			infoLessonToCreateOrEdited.setFim(fim);			InfoShift infoShift =				(InfoShift) (request.getAttribute(SessionConstants.SHIFT));			infoLessonToCreateOrEdited.setInfoDisciplinaExecucao(				infoShift.getInfoDisciplinaExecucao());			infoLessonToCreateOrEdited.setTipo(infoShift.getTipo());			infoLessonToCreateOrEdited.setInfoSala(infoSala);			String action = request.getParameter("action");			if (action != null && action.equals("edit")) {				InfoLesson infoLessonOld =					(InfoLesson) request.getAttribute(SessionConstants.LESSON);				KeyLesson keyLessonOld =					new KeyLesson(						infoLessonOld.getDiaSemana(),						infoLessonOld.getInicio(),						infoLessonOld.getFim(),						new RoomKey(infoLessonOld.getInfoSala().getNome()));				Object argsEditLesson[] =					{						keyLessonOld,						infoLessonToCreateOrEdited /*, iExecutionPeriod*/				};				try {					ServiceUtils.executeService(						SessionUtils.getUserView(request),						"EditarAula",						argsEditLesson);				} catch (ExistingServiceException ex) {					throw new ExistingActionException("A aula", ex);				} catch (InterceptingServiceException ex) {					throw new InterceptingActionException(						infoSala.getNome(),						ex);				} catch (InvalidTimeIntervalServiceException ex) {					throw new InvalidTimeIntervalActionException(ex);				}			} else {				Object argsCreateLesson[] =					{ infoLessonToCreateOrEdited, infoShift };				ServiceUtils.executeService(					SessionUtils.getUserView(request),					"CreateLesson",					argsCreateLesson);			}			return mapping.findForward("EditShift");		} else {			saveErrors(request, actionErrors);			return mapping.getInputForward();		}	}