No exercício tem essa afirmação:
"O problema de utilizarmos o cache de primeiro nível da nossa aplicação é que nós já configuramos que seja criado um novo EntityManager a cada requisição. Ou seja, como cada requisição possuí o seu próprio EntityManager e cada um destes o seu próprio cache, os dados do cache acabam se perdendo quando a requisição termina, além de, não serem reaproveitados entre requisições."
Se não fosse configurado para que o em existisse durante a requisição, ou seja, ele não existiria mais ao fim de um método (padrão)..... o cache de 1o nível também não serviria correto? Por que em uma próxima chamada de método outro em seria criado e teria seu proprio cache e assim por diante....
Então o cache de 1o nível só serviria a nível de ser usado para a aplicação toda se fosse utilizado apenas um em para toda a aplicação?