Por que Não/Sim utilizar EJB?

11 respostas
keller

Eai galera sei que existem algumas discussoes
já aqui no forum e que o pessoal gosta de “fugir de EJB”.

Mas a duvida é , quando usar EJB ?

Porque nao vejo ninguem utilizando EntityBeans?
Porque o pessoal usa apenas SessionBean Stateless?

Valeu! :thumbup:

11 Respostas

Hal_Jordan

gui:
Eai galera sei que existem algumas discussoes
já aqui no forum e que o pessoal gosta de “fugir de EJB”.

Mas a duvida é , quando usar EJB ?

Porque nao vejo ninguem utilizando EntityBeans?
Porque o pessoal usa apenas SessionBean Stateless?

Valeu! :thumbup:

Qdo o EJb for versao 3.0 :wink:

fmeyer

Por que são horriveis de se trabalhar e vc pode usar hibernate nesta parte e ganhar em qualidade de codigo e simplicidade.

eu nao diria apenas sessionbean, os MDBs sao bastante usados em uma arquitetura de componentes distribuidos com muita comunicacao entre eles.

keller

Fernando,

Mas quando a arquitetura precisa “realmente” de componentes distribuidos ?

Sim MDBs tem uma otima usabilidade.
Já precisei utilizar alem de serem simples de codificar.

Valeu! :thumbup:

cv1

The first rule of distributed components: don’t.

Rafael_Nunes

gui:
Fernando,

Mas quando a arquitetura precisa “realmente” de componentes distribuidos ?

Sim MDBs tem uma otima usabilidade.
Já precisei utilizar alem de serem simples de codificar.

Valeu! :thumbup:

Aqui por exemplo a camada de tela fica em servidor diferente da camada de negócios, para otimização de recursos.
Nisso usamos Session Beans para comunicação entre ambos.
Optamos por distribuir devido a quatidade de acessos simultâneos, e a quantidade diferente de aplicações.

rodrigo_gomes

olá,

gui:
Eai galera sei que existem algumas discussoes
já aqui no forum

vc jah deu uma olhada nessa?
http://www.guj.com.br/posts/list/22965.java

Luca

Olá

Atualmente acho esta pergunta muito difícil de responder em um fórum. Haveria que estudar caso a caso e saber da competência da equipe.

Se a empresa dispõe de uma equipe com boa experiência no uso de EJBs acho que seu uso pode ser considerado como uma das opções de projeto. Porém, caso a equipe vá usar EJBs para aprender, então o projeto já tem grande chance de fazer água mesmo que EJBs sejam a melhor solução.

Acho que um arquiteto de sistema capaz de analisar cada caso e com segurança recomendar a melhor solução, deve ser valorizado pois é muito fácil um projeto bem intencionado que use as tecnologias mais recomendadas falir na implementação.

A frase citada pelo CV parece brincadeira mas é para ser levada a sério: pensem muito antes de ter certeza de que seu sistema precisa ser distribuído pois a maioria não é.

Eu já fui opositor ferrenho dos EJBs porque os achava bala de canhão para matar pombos e principalmente porque estudei a versão inicial que era horrível. Ao longo dos tempos aqui mesmo no GUJ fui vendo casos em que eles eram úteis. Mas até hoje nunca usei e só participei uma vez de projetos que usavam.

Os EJBs 3.0 prometem mas também já tem gente criticando.

Gui, se você pretende tirar certificação não discuta com a tecnologia. Estude e pronto.

[]s
Luca

danieldestro

Sempre tive arrepios de EJB. E até hoje só usei Session Stateless e MDBs.

Agora com EJB 3.0, parece que o nível de maturidade e trivialidade aumentou bem. Estou fazendo uma provade conceito de uma arquitetura e arrisco a dizer que agora sim está fazendo sentido adotar EJB completamente aqui.

Ainda mais porque estamos (cliente) entrando numa fase de aplicações voltadas a serviços (SOA), serviços distribuidos e cluster.

keller

rodrigo_gomes:
olá,

gui:
Eai galera sei que existem algumas discussoes
já aqui no forum

vc jah deu uma olhada nessa?
http://www.guj.com.br/posts/list/22965.java

Dei uma olhada sim Rodrigo,
No entanto eu tinha mais duvidas e achei mais conveniente
abrir um novo topico para conversar com a galera… :thumbup:

:smiley:

keller

Luca:
Olá

Atualmente acho esta pergunta muito difícil de responder em um fórum. Haveria que estudar caso a caso e saber da competência da equipe.

Também acho que seja dificil de ser respondida, por isso fiz ela,
pra trocar uma ideia com o pessoal…

To querendo saber fazer isso é claro que aqui nao vou ter
a resposta mas sim conseguirei enchergar um caminho na escuridao…

A grande pergunta que me consome, quando uma aplicação
tem que ser distribuida , quando nao tem ?

E como diferenciar pombos de verdadeiros “inimigos” ?

Isso é fato li alguns tutoriais de EJB3 ficou realmente mais
rapido o desenvolvimento!

Do que adianta eu ter a certificacao de EJB ( SCBCD ) e nao saber
quando devo aplica-lo ? Se for pra ter ela e nao saber quando utilizar
porque e como utilizar acho que nao tem sentido tirar ela… :wink:

Muito obrigado Luca pelo feedback! :thumbup:
Valeu pessoal! :smiley:

Thiago_Senna

Olá,

A fonte nada mais é que este artigo., especificamente da página 4.

Antes de mais nada, acho que ganhamos muito com o surgimento do Java Persistence API (JPA), e parece valer a pena adotar um arquitetura que faça uso desta especificação. O melhor é que podemos tirar proveito dela sem precisar de um container EJB.

Outra impressão que tenho, é que a migração de uma aplicação usando EJB 3 pode ser facilmente alterada para usar Spring. Então, faça uma aplicação com uma arquitetura que facilite a migração para EJB 3.

Eu ainda preciso ler estes artiguinhos aqui:
http://www.devx.com/Java/Article/32314/
http://www.devx.com/Java/Article/32447/0/page/1
http://blog.interface21.com/main/2006/05/30/getting-started-with-jpa-in-spring-20/
http://blog.interface21.com/main/2006/08/07/using-jpa-in-spring-without-referencing-spring/

Outra coisa que anda me deixando intrigado é:
JBoss Seam X (Spring + SpringMVC + Convenções)

Criado 21 de setembro de 2006
Ultima resposta 21 de set. de 2006
Respostas 11
Participantes 9