Desativar armazenamento em cache no JPA (eclipselink)
Quero usar o JPA (eclipselink) para obter dados do meu banco de dados. O banco de dados é alterado por várias outras fontes e, portanto, quero voltar ao banco de dados para todas as localizações executadas. Eu li várias postagens sobre como desativar o cache, mas isso não parece estar funcionando. Alguma ideia?
Estou tentando executar o seguinte código:
EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("default");
EntityManager em = entityManagerFactory.createEntityManager();
MyLocation one = em.createNamedQuery("MyLocation.findMyLoc").getResultList().get(0);
MyLocation two = em.createNamedQuery("MyLocation.findMyLoc").getResultList().get(0);
System.out.println(one==two);
um == dois é verdadeiro enquanto eu quero que seja falso.
Tentei adicionar cada um dos itens a seguir ao meu persistence.xml
<property name="eclipselink.cache.shared.default" value="false"/>
<property name="eclipselink.cache.size.default" value="0"/>
<property name="eclipselink.cache.type.default" value="None"/>
Também tentei adicionar a anotação @Cache à própria entidade:
@Cache(
type=CacheType.NONE, // Cache nothing
expiry=0,
alwaysRefresh=true
)
Estou entendendo mal alguma coisa?