Ir para o conteúdo

 Voltar a Banco de Tal...
Tela cheia

Implementação do Atributo Virtual no repositório da comunidade

21 de Janeiro de 2010, 12:51 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 7 vezes

Pessoal, criei o ticket#1 no trac do BT e ali coloquei várias informações sobre a implementação do atributo virtual, inclusive os fontes e o diff. Agora seria necessário que alguém aplicasse aos fontes da comunidade.

Todas as modificações foram feitas na revisão 70 do trunk da comunidade.

Pretendo criar outros tickets explicando algumas melhorias e correções que fizemos ao longo do tempo e aí a comunidade pode discutir se vale a pena aplicá-las ou não.

 

Att. Christian


Autor: Christian Cleber Masdeval Braz


44 comentários

  • F24dd96a3b3343b99b684fc44d2e5b71?only path=false&size=50&d=404Luciano Dias(usuário não autenticado)
    26 de Janeiro de 2010, 18:34

     

    Oi Christian,

    Antes de mais nada, reitero meus cumprimentos pela excelente solução, aproveitando a infraestrutura do sistema com um código limpo e ótima documentação, que você apresentou para uma necessidade muito requerida.

    Eu apliquei as alterações que você fez na revisão 70 do trunk, mas tive que fazer as seguintes alterações:

    - adequação do código fonte para compilar no Java v1.4;

    - alteração do pacote da classe GerenciadorAtributoVirtual para br.gov.camara.negocio.bancotalentos.util;

    - entre outras pequenas adequações.

    Eu fiz o seguinte teste: criei um atributo chamado "Perfil Sistema" e o configurei para ser um atributo virtual apontando para a tabela "PerfilSistema" do próprio Banco de Talentos. Eu removi os comentários para o tratamento de um atributo virtual da classe TalentoSequencia e esta nova funcionalidade está funcionando com uma certa instabilidade. De qualquer maneira eu fiz o commit (revisão 73) para que você e outros possam testar.

    Lembro que ainda estamos falando de uma funcionalidade em desenvolvimento (versão pré-ALFA), por isso não usem em um ambiente de produção.

    Um abraço,

    Luciano.

    • 5027e96c2c456119c052b9d4a37310c8?only path=false&size=50&d=404Christian Cleber Masdeval Braz(usuário não autenticado)
      27 de Janeiro de 2010, 11:54

       

        Obrigado Luciano. Fico feliz em poder compartilhar nossa solução.

        Farei um update dos fontes aqui e tentarei ver o que está acontecendo.

        Abraços

    • 5027e96c2c456119c052b9d4a37310c8?only path=false&size=50&d=404Christian Cleber Masdeval Braz(usuário não autenticado)
      9 de Fevereiro de 2010, 17:25

       

      Luciano, iria simular aqui a criação desse atributo PerfilSistema que vc criou para teste (já que não tenho o banco de dados alterado) e para isso pretendia me basear no arquivo AtributoVirtual.properties para ver o SQL que vc fez. Porém esse arquivo veio vazio quando fiz o update. Será que você comitou?

       

      Att. Christian

      • F24dd96a3b3343b99b684fc44d2e5b71?only path=false&size=50&d=404Luciano Dias(usuário não autenticado)
        9 de Junho de 2010, 23:55

         

        Oi Christian,

        Acabei de fazer o commit de um código que resolveu o problema das conexões abertas na utilização do Atributo Virtual.

        Basicamente, as alterações foram as seguintes:

        1) O GerenciadorAtributoVirtual não chama diretamente o AtributoTalentoDAO: antes é chamada a classe AtributoTalentoFacade que por sua vez chama o respectivo DAO.

        Na nossa "arquitetura", as Facades são as responsáveis por abrir e fechar conexões e iniciar e realizar transações. Se esses comandos (que estão na classe DAO) forem chamados por outro tipo de classe, eles são ignorados.

        2) Nas classes HibernateUtilCD, ConexaoJDBC e DAO, foi disponibilizado um método para recuperar dados por SQL com a passagem de parâmetros.

        Existe um bug conhecido que está alterando indevidamente o conteúdo dos campos referentes a atributos virtuais. Esse bug já tinha sido solucionado, mas eu não estou com o código aqui. Amanhã tentarei postar.
        Qualquer dúvida, entre em contato.
        Um abraço,

        Luciano.

        ATENÇÃO: a implementação da funcionalidade AtributoVirtual está em versão ALFA e não deve ser utilizada em ambiente de produção. Além disso, pode ser que o mecanismo implementado sofra alterações.

Essa comunidade não possui posts nesse blog