Exemplo de DAO + Facade + EJB3/JPA

Galera,
Aguém teria um exemplo de uma implementação de um DAO sendo chamado por uma Facade em um projeto EJB3 / JPA ?

To montando um projeto JEE nesta arquitetura:

JSP -> Controller -> Facade -> DAO -> Entity.

Usando EJB3/JPA.

Um abraço.

public interface DAO { }

public interface XinfrimDAO extends DAO { // seu código aqui... }

public class XinfrimJpaDAO implements XinfrimDAO { // seu código aqui... }

public class DAOFactory { public static DAO getDAO( Class c ) { // cria o objeto DAO a partir do class da sua interface e o retorna } }

@Remote public class ToscoFacade { public void cagadaMaster( String algo ); }

@Stateless public class ToscoFacadeBean implements ToscoFacade { public void cagadaMaster( String algo ) { XinfrimDAO dao = (XinfrimDAO) DAOFactory.getDAO( XinfirmDAO.class ); String shit = dao.executaABesteira( algo ); dao.consolidaACagada( shit ); } }

[code]public class TeuMegaController {
@EJB
private ToscoFacade tosco;

public void cagadaMaster( String algo ) {
tosco.cagadaMaster(algo);
}
}[/code]

Mais simples e tosco que isso?

no site do hibernate tem uma aplicação completa feita pelo Bauer, da uma procurada la (to com preguiça de achar o link :P)

Galera,
Obrigado pelas respostas, eu estava com outro endereço de e-mail aqui no meu perfil por isso não tinha percebido as respotas.

Buenas,
Quanto a resposta tem um problema, pois o código acima não funciona, pois o JBoss reclama que a DAO não esta dentro do contexto JPA/Não faz parte de uma transação JPA.

 No meu caso eu tenho a seguinte estrutura de projetos(usando o NetBeans 5.5.1 e o JBoss 4.2): 


 EAR (Projeto Enterprise Application do Netbeans)
     DAO.jar (Projeto EJB Module)
     Facade.jar (Projeto EJB Module)

 Atualmente eu injeto o DAO na facade com um @EJB e mesmo assim da pau, eu já tentei de tudo, mas não estou conseguindo fazer funcionar isto.

 Segue um post que abri com maiores detalhes:
 [url]http://www.guj.com.br/posts/list/73261.java[/url]
  
 Obrigado pela ajuda de todos.

 Ob: Me desculpem os moderadores pela duplicidade de tópicos. Eu abri um segundo tópico após refletir melhor na estrutura e detalhamento dos problemas para apresentar para os colegas.