quinta-feira, 23 de janeiro de 2020

Construindo um converter para JSF

    Nesse poste vou mostrar um converter simples do JSF. A diferença entre converters do JSF 1.* para o 2.* é que no 1.* é necessário declarar o converter no arquivo faces-config.xml enquanto que no 2.* é usado a anotação @FacesConverter.

    O papel do converter é dizer ao JSF como levar para o lado cliente e trazer de volta os objetos das classes que você construiu. É exigido, por exemplo, para a construção de Selects.

    Na prática, pela grande quantidade de classes de um projeto, geralmente se constrói um converter genérico para evitar o trabalho de ter que construir um converter para cada classe.

@FacesConverter(forClass=Paciente.class)
public class PacienteConverter implements Converter {
   
    PacientesDAO pacientesDAO = new PacientesDAO();
   
    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        if (value == null) {
              return null;
        }
        Long id = new Long(value);
            Paciente paciente = (Paciente) pacientes.porId(id);
        return paciente;
         
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        if (value == null) {
              return null;
        }
             
        Paciente paciente = (Paciente) value;
             
        return  paciente.getId().toString();
    }

}

    Para este artigo é isso, abraços.

segunda-feira, 13 de janeiro de 2020

Comandos GIT para novos repositórios

    Nesse post trago apenas dicas básicas sobre o GIT que estão disponíveis geralmente nos próprios repositórios (GitHub, GitLab, Bitbucket, etc).
Configuração global do GIT 
 
git config --global user.name "seu_nome"
git config --global user.email "seu_email" 
Criando um novo repositório
git clone url_do_seu_projeto (git@blablabla)
cd pasta_projeto
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master 
Criando um repositório para um projeto existente
cd pasta_projeto
git init
git remote add origin url_do_seu_projeto (git@blablabla)
git add .
git commit -m "Initial commit"
git push -u origin master
 Migrando um projeto de um repositório para outro
cd pasta_projeto
git remote rename origin old-origin
git remote add origin url_do_seu_projeto (git@blablabla)
git push -u origin --all
git push -u origin --tags 
 
     Caso não queira Guardar o histórico de branchs, tags, comites, etc, pode-se 
apagar a pasta .git no projeto e fazer como se o projeto nunca tivesse sido 
gerenciado pelo GIT.