No curso "Spring MVC II: Integração, cache, segurança e templates" são criados arquivos de configurações de JPA diferentes para cada ambiente.
Um deles, o arquivo JPAConfiguration, está anotado com @EnableTransactionManagement, e o outro, o arquivo JPAProductionConfiguration, não está com @EnableTransactionManagement.
Porque?
Como o Spring sabe quais são todos os arquivos que possuem configuração de JPA? No início achei que fosse por causa do @EnableTransactionManagement, mas como o o arquivo JPAProductionConfiguration não recebeu tal anotação, fiquei com dúvida.