Objetos de acesso a dados EJB3

Estou trabalhando em um projeto em que precisamos decidir como vamos expor nossa camada de persistência.

Atualmente, existem duas opções na mesa:

1) Use DAOs comuns. Eles implementariam uma interface e seriam injetados (provavelmente usando o Weld) nos componentes de negócios que são EJBs. Internamente, eles usariam o JPA / Hibernate para persistência.

2) Em vez de injetar os DAOs usando o Weld, eles seriam implementados como EJBs e injetados com @EJB nos Componentes de Negócios.

Realmente faz sentido usar EJBs para a camada de persistência quando não estamos usando seus recursos (por exemplo, gerenciamento de transações - a camada de negócios lida com isso)?

Existe alguma penalidade de desempenho no uso do EJB sobre o Weld (ou o contrário)?

Qual opção você acha que é melhor?

questionAnswers(1)

yourAnswerToTheQuestion