[quote=FernandoFranzini][quote]Sem flames mas alguem poderia listar alguns beneficios de maleficios deles, sei que as 2 devem ter seu lado bom e seu lado ruim, mas gostaria apenas de saber.
Pretendo implementar ejb em meu sistemas mas estou meio indeciso, pois falaram tambem que o ejb so funciona em jboss!! [/quote]
vamos la…
JBoss é um monstro, cheios de recursos…muito provável que vc não precise nem de 10%. Na maioria dos casos o pessoal nem precise usar EJB. Não sei seu caso…Segue um resumo dos serviços básicos do JBOSS (ou qualquer container JEE full)
- Log
- SSL
- JNDI completo.
- Diversas estrategias de autenticação e autorização com JAAS
- autenticação e autorização single-signon
- Cluster e Load balancer
- cache standalone, distribuído, data grid
- Diversas estrategias de JCA (acesso a legados e mainframe)
- Diversas estrategias de DataSource
- JavaMail
- Diversas versões de JSF
- Diversas versões de JSTL
- Diversas versões de JPA (ORM)
- web services SOAP
- web services REST
- Mensageira com JMS e EJB
- Servlet e JSP
- EJB local
- EJB remoto (RMI)
- Validação com Bean Validation
- Agendamento (EJB Timer)
- AOP interceptores
- Ioc EJB e CDI
- transações standalone e distribuída JTA
- muitas e muitas outras coisas extensões proprietárias que eu não me lembro agora e não sei de cabeça.
Vc precisa de um grande conhecimento e varias certificação RED HAT para saber habilitar, desabilitar e monitorar TUDO ISSOOOOOOO!!! É algo bem complexo sim…
Tomcat é muito usado pq ele é simples sem nenhum serviço por padrão. Na verdade vc precisa habilitar os serviços na unha através de um “ligthware container = frameworks de terceiros”, caso sua solução necessite usar um serviço que no qual o tomcat não fornceça.
Segue um resumo dos serviços básicos do tomcat:
- Log
- SSL
- Algumas estrategias de autenticação e autorização com JAAS
- autenticação e autorização single-signon
- JNDI completo, mas vazio.
- Cluster e Load balancer
- Servlet e JSP
- Um DataSource
- algumas extensões proprietárias que eu não me lembro agora e não sei de cabeça.
Vc precisa de bem menos conhecimentos para saber usar e monitorar. 1 livro ou ler o docs no site já é suficiente.
Na verdade vc tem que escolher um container que lhe beneficie mais…Veja bem…quais são os serviços que sua aplicação vai precisar? Compensa ir direto para um container full cheio de coisas e desabilitar ou ir para um container minimo e habilitar alguns serviços? É uma decisão baseada na solução e não gosto pessoal.
O que mais temos aqui no forum é os abelhudos usando JBOSS com ejb sem a necessidade se ferrando no ambiente de produção com uma serie de issues justamente por ter usado algo que não precisava…A famosa frase “Matar formiga com bazuca”! Fique livre para tomar sua decisão…
Vai uma dica…
Hoje as coisas mudaram…
Temos o “web profile” no JEE 6 que é justamente o meio termo.
Falei com o pessoal da oracle no JavaOne 2011 SP e todos eles indicaram usar Glasshfish com web profile. Eles me mostraram muitas empresas que usam em produção hoje. Muito bom!
Segue um resumo dos serviços básicos do web profile:
[i]The Java EE 6 web profile is a specified minimal configuration targeted for small footprint servers that support “typical” web applications. The Web profile is a minimal specification, so an implementation is free to add additional services or allow applications to provision additional services. The required elements of the web profile are:
- Servlet e JavaServer Pages
- Standard Tag Library for JavaServer Pages
- JavaServer Faces (JSF) 2.0
- Enterprise JavaBeans (EJB) 3.1 Lite (JSR-318) (Somente local)
- Java Transaction API (JTA)
- Java Persistence API (JPA)
- Dependency Injection for Java 1.0
- Contexts and Dependency Injection for Java EE platform 1.0
- Bean Validation 1.0
- Interceptors 1.1
- SOAP E REST
[/i]
Web profile é justamente um tomcat melhorado, ou seja, o servidor com poucos serviços habilitados. Justamente aqueles que nos fazíamos manualmente na unha.
O tomcat tb implementa o web profile com TOMEE (mas não se esta pronto…)
Veja - http://fernandofranzini.wordpress.com/2012/01/20/migrando-de-spring-para-jee-6-web-profile/
Na verdade agora temos 3 tipos de servidores para escolher
- O minimo sem nada - vc habilita na unha os serviços.
- O intermediário com web profile - vem serviços básicos para aplicações de pequeno a medio porte.
- O completo full - todos os serviços do JEE + extensões proprietárias de cada provedor.
[/quote]
Muito bom. Eu não estava a par do Web Profile. De qualquer maneira, esse post é bastante esclarecedor.