Arquivo de java

Quando a tecnologia rema contra a maré…

Atualmente estou trabalhando como arquiteto para o Portal Internet de uma grande empresa brasileira. Entre as minhas funções, está a decisão entre usar ou não os EJBs 3.0 (Enterprise JavaBeans, para quem chegou aqui agora…). Como o tempo de desenvolvimento e a complicação caem consideravelmente e o Java EE 5 já possui alguns servidores homologados pensei: Por que não?
Acontece que o cliente possui a restrição de trabalhar com o Application Server de um distribuidor defindo e não existe meios de se alterar isso. Esse distribuidor, por sua vez, lançou há uns meses atras a sua versão do Application Server compatível e homologado para o JEE 5. Ou seja… TODOS os recuros da versão deveriam ter um mínimo de funcionamento naquele servidor.
Meu sofrimento começou quando tentei desenvolver um EJB 3 usando a IDE disponibilizada por eles. É claro que não funcionou, né? A ferramenta só permitia que fossem criados projetos que usassem EJB 2.1 (um parto para qualquer desenvolvedor) e, caso eu decidisse criar um projeto EJB 3 por conta própria, ela simplesmente não permitia que esse projeto fizesse parte de um EAR automaticamente.
Por amor ao Java, decidi fazer um projeto separado mesmo e colocar o JAR compilado a força dentro do EAR através de um script Ant mesmo. A principio tudo funcionou… EJB chamando EJB… Servidor reclamando de Interfaces que ele não achava… Meu projeto estava salvo! Até que tentei fazer a bendita (ou maldita) injeção de dependência em um componente JSF.
Se você não conhece, a injeção de dependência consiste em identificar as classes que o seu objeto precisa para ser utilizado e, a partir dai, criar uma instância delas e já colocar no seu objeto através dos metodos set dele. O JEE 5 melhor isso tudo e faz toda essa montagem através de annotations @EJB. Exceto no Application Server do meu cliente.
Tres dias de emails para fornecedor, cliente e chefe depois, decidimos fazer uma reunião para acertar os pontos falhos da arquitetura. De cara o representante do fornecedor já vem com aquele papo de “uma tecnologia de vanguarda como o EJB 3 aumenta muito o risco da sua aplicação, ainda mais porque a nossa equipe não está totalmente capacitada para atendê-los”, ou seja, “nosso produto não funciona e você vai ter que fazer tudo por conta e risco”.
Como não podia bater de frente com o cara e muito menos jogar a m**** no ventilador, decidir abandonar o EJB e fazer a minha camada de negócio através do Spring mesmo. Só não me peçam para plugar aplicações de terceiros nesse site porque agora ele está offline!

Comentários