Onde colocar a anotação @Transactional no Play

Estou tentando conectar meu aplicativo Play a um banco de dados, estou seguindo o estilo de camada controller-> service-> DAO.

Onde a anotação @Transactional deve ser colocada. No método de ação do controlador ou posso colocá-lo em um nível de classe / nível de classe da camada de serviço.

Tentei manter a anotação @Transactional em um dos métodos da classe Service layer e ela gerou um erro de tempo de execução.

[RuntimeException: nenhum EntityManager encontrado no contexto. Tente anotar seu método de ação com @ play.db.jpa.Transactional]

Então, precisamos usar o @Transactional apenas em cima das ações do controlador? Estou usando a versão play 2.4.2. Se sim, por que? Enquanto chamo meus DAO na camada de serviço, as operações reais do banco de dados começarão na camada de serviço e não no controlador, eu acho. No controlador, estou apenas chamando a camada de serviço.

questionAnswers(1)

yourAnswerToTheQuestion