public ActionForward exibir( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { Orgao localOrgao = null; final String idOrgao = request.getParameter("id"); OrgaoCtrl orgaoCtrl = new OrgaoCtrl(getDaoFactory()); ConfiguracoesOrgaoCtrl configuracoesOrgaoCtrl = new ConfiguracoesOrgaoCtrl(getDaoFactory()); if (idOrgao == null) { localOrgao = getOrgao(request); } else { localOrgao = orgaoCtrl.get(new Long(idOrgao)); } ConfiguracoesOrgao configuracoes = localOrgao.getConfiguracoes(); if (configuracoes == null) { configuracoes = new ConfiguracoesOrgao(); request.setAttribute("function", "incluir"); } else request.setAttribute("function", "alterar"); request.setAttribute("orgao", localOrgao); request.setAttribute("configuracoes", configuracoes); request.setAttribute( "listaMeioEnvioRespostaTodos", configuracoesOrgaoCtrl.listarMeioEnvioResposta()); request.setAttribute( "diretorioContextoAplicacao", configuracoesOrgaoCtrl.getParametrosGerais().getDiretorioContextoAplicacao()); request.setAttribute( "listaDiretoriosCores", configuracoesOrgaoCtrl.listarDiretoriosCores( this.servlet.getServletContext().getRealPath(""))); horaAgendadaAntiga = configuracoes.getHoraEnvioNotificacao(); return mapping.findForward("exibir"); }
public void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { Orgao orgao = null; OrgaoCtrl orgaoCtrl = new OrgaoCtrl(daoFactory); // Instancia a sessao HttpSession session = request.getSession(true); boolean flagPesquisa = false; // se houverem dados de pesquisa na sessao entao starta o flag if (session.getAttribute("possuiPesquisa") != null) { if (session.getAttribute("possuiPesquisa").equals("sim")) { flagPesquisa = true; } } if (flagPesquisa) { int caminho = 0; // qq um desses links preservam os dados da sessao if ((request.getServletPath().equals("/andamento/ExibeMsgPorRespons.do")) || (request.getServletPath().equals("/andamento/ConsultaSolucoes.do")) || (request.getServletPath().equals("/andamento/ConsultarBancoScriptsMsg.do")) || (request.getServletPath().equals("/andamento/RedirecionarMensagem.do")) || (request.getServletPath().equals("/andamento/ReclassificarMensagem.do")) || (request.getServletPath().equals("/andamento/ConfirmaResposta.do")) || (request.getServletPath().equals("/andamento/RespondeAcionamento.do")) || (request.getServletPath().equals("/andamento/ConsultaMsgPorRespons.do")) || (request.getServletPath().equals("/andamento/SalvaRascunhoResp.do")) || (request.getServletPath().equals("/andamento/ListaMsgPorRespons.do")) || (request.getServletPath().equals("/andamento/ConfirmaRedirecionarMensagem.do"))) { caminho = 1; } switch (caminho) { case 0: // caso saia da tela, então a sessao é limpa limpaSessao(request, session); break; case 1: break; } } // obter o ID da sessão String orgaoSessionId = request.getParameter(Constants.ID_SESSAO_ORGAO); if (orgaoSessionId == null) { // verificar se a sessão expirou if (request.getSession() == null) { doForward(Constants.LOGIN_EXPIRED_ACTION, request, response); return; } // tentar obter o ID do atributo correspondente na sessão orgaoSessionId = (String) request.getSession().getAttribute(Constants.ID_SESSAO_ORGAO); // se não achou o ID no atributo da sessão, procurar pelo cookie if (orgaoSessionId == null) { Cookie[] cookies = request.getCookies(); for (int i = 0; (cookies != null && i < cookies.length); i++) { Cookie cookie = cookies[i]; if (cookie.getName().equals(Constants.ID_SESSAO_ORGAO)) { orgaoSessionId = cookie.getValue(); } } } } // se não obteve o ID, redirecionar o usuário para página adequada if (orgaoSessionId == null) { doForward(Constants.NOT_FOUND_PAGE, request, response); return; } // obter o órgão orgao = orgaoCtrl.get(orgaoSessionId); if (orgao == null) { doForward(Constants.NOT_FOUND_PAGE, request, response); return; } /* adiciono o sessionId na sessão */ HttpSession ses = request.getSession(true); ses.setAttribute(Constants.ID_SESSAO_ORGAO, orgaoSessionId); ses.setAttribute("_ORGAO_", new OrgaoDto(orgao)); /* adiciono um cookie com o id do orgão */ if (orgaoSessionId != null) { Cookie cookie = new Cookie(Constants.ID_SESSAO_ORGAO, orgaoSessionId); cookie.setPath("/"); response.addCookie(cookie); } /* * adiciono um cookie com um identificador único para verificação do * timeout da sessão */ if (request.getSession().getAttribute(Constants.PA_FUNCIONARIO) != null) { Cookie cookie = new Cookie(Constants.PA_EXPIRE, String.valueOf(System.currentTimeMillis())); cookie.setPath("/"); response.addCookie(cookie); } /* adiciono o layout à sessão */ setOrgaoLayout(request, orgao); try { ConfiguracoesOrgao configuracaoes = orgao.getConfiguracoes(); request.setAttribute("configuracoes", configuracaoes); if (configuracaoes.getNotificacaoEmail() != null && configuracaoes.getNotificacaoEmail().equals("S")) { if ((OuvidoriaScheduler.sched == null) || (OuvidoriaScheduler.sched != null && !OuvidoriaScheduler.sched.isStarted())) { OuvidoriaScheduler.init(request); } } } catch (SchedulerException se) { se.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } super.process(request, response); }
/** * @param request * @param orgao */ private void setOrgaoLayout(HttpServletRequest request, Orgao orgao) { LayoutBean layoutBean = (LayoutBean) request.getSession().getAttribute(Constants.SS_LAYOUT); if (layoutBean == null) { layoutBean = new LayoutBean(); } layoutBean.setDiretorioOrgao(orgao.getConfiguracoes().getNomeDiretorioOrgao()); layoutBean.setEsquemaCores("estilos/".concat(orgao.getConfiguracoes().getEsquemaCoresLayout())); layoutBean.setCorCabecalhoBanner(orgao.getConfiguracoes().getCorCabecalhoBanner()); layoutBean.setCorCabecalhoLogo(orgao.getConfiguracoes().getCorCabecalhoLogo()); layoutBean.setImagem3( "/" + orgao.getConfiguracoes().getNomeDiretorioOrgao() + "/images/" + orgao.getConfiguracoes().getImagem3()); layoutBean.setImagem4( "/" + orgao.getConfiguracoes().getNomeDiretorioOrgao() + "/images/" + orgao.getConfiguracoes().getImagem4()); layoutBean.setImagem5( "/" + orgao.getConfiguracoes().getNomeDiretorioOrgao() + "/images/" + orgao.getConfiguracoes().getImagem5()); layoutBean.setImagemBanner( "/" + orgao.getConfiguracoes().getNomeDiretorioOrgao() + "/images/" + orgao.getConfiguracoes().getImagemBanner()); layoutBean.setImagemLogo( "/" + orgao.getConfiguracoes().getNomeDiretorioOrgao() + "/images/" + orgao.getConfiguracoes().getImagemLogo()); layoutBean.setDescricaoImagem3(orgao.getConfiguracoes().getDescricaoImagem3()); layoutBean.setDescricaoImagem4(orgao.getConfiguracoes().getDescricaoImagem4()); layoutBean.setDescricaoImagem5(orgao.getConfiguracoes().getDescricaoImagem5()); layoutBean.setDescricaoImagemBanner(orgao.getConfiguracoes().getDescricaoImagemBanner()); layoutBean.setDescricaoImagemLogo(orgao.getConfiguracoes().getDescricaoImagemLogo()); layoutBean.setLinkImagem3(orgao.getConfiguracoes().getLinkImagem3()); layoutBean.setLinkImagem4(orgao.getConfiguracoes().getLinkImagem4()); layoutBean.setLinkImagem5(orgao.getConfiguracoes().getLinkImagem5()); layoutBean.setLinkImagemBanner(orgao.getConfiguracoes().getLinkImagemBanner()); layoutBean.setLinkImagemLogo(orgao.getConfiguracoes().getLinkImagemLogo()); layoutBean.setNomeExibicaoOrgao(orgao.getConfiguracoes().getNomeExibicaoOrgao()); request.getSession().setAttribute(Constants.SS_LAYOUT, layoutBean); }