我用EJB和JPA2构建了一个应用程序。如果我的页面正在运行并且我在数据库中更改某些内容,则它将不会显示在页面上。我尝试过不同的浏览器,浏览器的非缓存会话等。我能看到新数据的唯一方法就是重启glassfish 3.1。我已经完成了调试,显然每次都会建立一个新的列表,但它所获得的数据已经过时了。
这是我的findAll方法。
public List<T> findAll() {
CriteriaQuery cq = getEntityManager().getCriteriaBuilder().createQuery();
cq.select(cq.from(entityClass));
return getEntityManager().createQuery(cq).getResultList();
}
glassfish / ejb上是否有设置告诉它不要缓存数据库?或类似的东西。
只想重申重启Glassfish可以解决问题。直到下一次改变。