Este post, na verdade, é uma dica rápida para quem possui aplicações JavaEE rodando em servidores Glassfish e está tendo dificuldades na hora de rastrear a origem de possíveis bugs no código. (mais…)
Posts com a Tag ‘javaee’
Debugando aplicações JavaEE no Glassfish v2
segunda-feira, 22 de setembro de 2008JavaEE 5 interceptors
domingo, 21 de setembro de 2008É inegável que a não-tão-nova versão 5 da especificação JavaEE veio numa hora mais do que necessária. Todo mundo parecia — e com razão — evitá-la ao máximo, pois seu uso demandava muito tempo e caixas de calmante.
Hoje, criar e manter uma aplicação com EJBs é relativamente simples. E, por este motivo, a adoção da tecnologia passou a ser mais expressiva, mesmo em projetos menores.
Alguns aspectos da especificação, entretanto, ainda deixam a desejar. Um exemplo seria a parte de injeção de dependências, que é limitada apenas a componentes gerenciados pelo container. O que isso quer dizer? Isso quer dizer que, para você poder tirar proveito do esquema de injeção de dependências, todos os seus componentes precisam ser EJBs.
Mas, nesta versão, os EJBs não são POJOs? Sim, mas ter de expor classes simples como EJBs — só para ganhar essa “injetabilidade” de presente — não parece correto. E, da mesma forma, espalhar instanciações de objetos pelos vários componentes da aplicação definitivamente também não parece. (mais…)
2 (boas) formas de testar clientes JavaMail
sábado, 20 de setembro de 2008Sem sombra de dúvidas, a API Java mais usada para resolver a questão do envio e recebimento de emails é o JavaMail. Apesar de existirem outras opções, como o Spring Mail e Commons Email, no fim das contas é o próprio JavaMail quem faz todo o trabalho sujo, já que tais APIs são baseadas no próprio JavaMail.
Apesar de dar conta do recado, a referida API conta com alguns problemas bastante complicados, dentre os quais eu destaco o design (horrível, diga-se de passagem) de suas classes e interfaces, que parecem fazer o possível para dificultar a testabilidade dos seus “clientes”. (mais…)