Hibernate fonction de lecture affiche les données anciennes

J'ai un problème d'affichage de données à partir de la base de données. Si je mettre à jour un objet, parfois, je reçois les données anciennes, parfois la nouvelle. Fonction de mise à jour fonctionne bien (je peux voir en DB à droite de mise à jour), tandis que la fonction de lecture semble pour obtenir des données mises en cache. J'ai essayé de désactiver les caches, a essayé de l'ouvrir et de fermer la session en cours mise à jour/enregistrer, mais ça ne marche toujours pas.
À la fois Utilisateur et de Stocker des haricots ont Paresseux extrait.
Merci!

LA FONCTION DE LECTURE:

    public static List<Store> getStoreByUser(User user)
        throws HibernateException {
    List<Store> result = null;
    Session session = sessionFactory.getCurrentSession();   
    Transaction transaction = null;
    try {
        transaction = session.getTransaction();
        Criteria criteria = session.createCriteria(Store.class);
        criteria.add(Restrictions.eq("userUserID", user));
        result = criteria.list();
    } catch (HibernateException he) {
        logger.error("No Store found for user: = " + user, he);
        throw he;
    }
    return result;
}

MISE À JOUR/LA FONCTION DE SAUVEGARDE:

    public static Integer insertOrUpdateStore(Store store)
        throws HibernateException {
    Integer id = null;
    Session session = sessionFactory.getCurrentSession();   
    Transaction transaction = null;
    try {
                    transaction = session.getTransaction();
        if (store.getStoreID() != null && store.getStoreID() != 0) {

            session.merge(store);
            transaction.commit();

        } else {
                id = (Integer) session.save(store);
            transaction.commit();               
        }
    } catch (HibernateException he) {
        if (transaction != null) {
            transaction.rollback();
        }
    } finally {
    }       
    return id;
}

OriginalL'auteur Gore | 2012-08-20