Java tutorial
/*** Copyright (c) 2012 - 2020 Hrcules S. S. Jos Este arquivo parte do programa Oramento Domstico. Oramento Domstico um software livre; voc pode redistribui-lo e/ou modific-lo dentro dos termos da Licena Pblica Geral Menor GNU como publicada pela Fundao do Software Livre (FSF); na verso 2.1 da Licena. Este programa distribudo na esperana que possa ser til, mas SEM NENHUMA GARANTIA; sem uma garantia implcita de ADEQUAO a qualquer MERCADO ou APLICAO EM PARTICULAR. Veja a Licena Pblica Geral Menor GNU em portugus para maiores detalhes. Voc deve ter recebido uma cpia da Licena Pblica Geral Menor GNU sob o nome de "LICENSE.TXT" junto com este programa, se no, acesse o site do projeto no endereco https://github.com/herculeshssj/orcamento ou escreva para a Fundao do Software Livre(FSF) Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. Para mais informaes sobre o programa Oramento Domstico e seu autor entre em contato pelo e-mail herculeshssj@outlook.com, ou ainda escreva para Hrcules S. S. Jos, Av. Ministro Lafaeyte de Andrade, 1683 - Bl. 3 Apt 404, Marco II - Nova Iguau, RJ, Brasil. ***/ package br.com.hslife.orcamento.controller; import java.io.Serializable; import java.util.Locale; import javax.faces.application.FacesMessage; import javax.faces.context.FacesContext; import org.springframework.beans.factory.annotation.Autowired; import br.com.hslife.orcamento.component.OpcaoSistemaComponent; import br.com.hslife.orcamento.component.UsuarioComponent; import br.com.hslife.orcamento.entity.Moeda; import br.com.hslife.orcamento.entity.Usuario; public abstract class AbstractController implements Serializable { /** * */ private static final long serialVersionUID = -4309624158532539748L; protected String moduleTitle = ""; protected String actionTitle = ""; @Autowired private UsuarioComponent usuarioComponent; @Autowired private OpcaoSistemaComponent opcaoSistemaComponent; protected abstract void initializeEntity(); public abstract String startUp(); public String getModuleTitle() { return moduleTitle; } public Usuario getUsuarioLogado() { if (FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("usuarioLogado") == null) { Usuario u = new Usuario(); try { u = usuarioComponent.getUsuarioLogado(); u.setSenha(null); FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("usuarioLogado", u); } catch (Exception e) { errorMessage(e.getMessage()); } } // Aplica as configuraes de locale para pt_BR // Tentativa de definir o pt_BR para a aplicao inteira independente das configuraes do servidor de aplicao FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale("pt", "BR")); return (Usuario) FacesContext.getCurrentInstance().getExternalContext().getSessionMap() .get("usuarioLogado"); } public OpcaoSistemaComponent getOpcoesSistema() { return opcaoSistemaComponent; } public Moeda getMoedaPadrao() { return getOpcoesSistema().getMoedaPadrao(); } public void infoMessage(String mensage) { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, mensage, null)); } public void warnMessage(String mensage) { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, mensage, null)); } public void errorMessage(String mensage) { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, mensage, null)); } public void fatalErrorMessage(String mensage) { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL, mensage, null)); } public void setUsuarioComponent(UsuarioComponent usuarioComponent) { this.usuarioComponent = usuarioComponent; } public void setOpcaoSistemaComponent(OpcaoSistemaComponent opcaoSistemaComponent) { this.opcaoSistemaComponent = opcaoSistemaComponent; } }