EJB 3.1 - Gerenciando transações

Olá galera,
alguém conseguiria me explicar um ganho positivo ao gerenciar transações com EJB 3.0 ou posterior? Talvez uma comparação
com JPA puro sem EJB…

Abraços,

Não dá para comprar gerenciamento de transação entre EJB e JPA porque nenhum deles gerencia transação. Quem gerencia isso em um ambiente JEE é o JTA (caso CMT), ou manualmente caso você usar BMP ou estiver em um ambiente JSE.

A vantagem no ambiente gerenciando é que você não precisa se preocupar com commit/rollback, além de brinde ganhar transações distribuídas caso precisar.

Pode explicar melhor CMT e BMP?

Dê uma olhada no JEE Tutorial, lá explica muito bem isso tudo. Até na wikipedia tem alguma coisa em português, se você tiver problemas com inglês.

Basicamente CMT (Container Managed Transaction) é transação gerenciada pelo servidor; e BMT (Bean Managed Transaction) é transação gerenciada pelo seu bean, ou seja, você que faz commit/rollback manualmente.

Hum legal. Isto significa que posso ter uma arquitetura onde uso por exemplo JPA e JTA sem a necessidade de ter EJB?