Фактическая проблема, с которой я сталкиваюсь, заключается в возможности принудительного обновления eclipselink независимо от содержимого кэша.В настоящее время eclipselink не создает новые операторы обновления, если новое обновление имеет то же значение, что и в кэше.Я не хочу использовать свойство refresh () в постоянном XML-файле.
Я ищу решение, в котором я могу указать обновляемому объекту, чтобы он не использовал значения в кэше.
EntityManager em=getEntityManager();
EntityTransaction t = em.getTransaction();
t.begin();
Ticket ticket = get(ticketId);
if(ticket == null) {
return null;
}
ticket.setState(status);
em.persist(ticket);
t.commit();
Если я изменю вышеприведенное обновление (метод setState) на запрос sql, тогда у объекта запроса есть возможность сделать setHint, где мы можем упомянуть setHint (QueryHints.CACHE_USAGE, CacheUsage.DoNotCheckCache).Я тоже не могу этого сделать, так как используется много таких обновлений.
В приведенном выше фрагменте обновление происходит с использованием метода установки, в этом случае, как мы указываем подсказку для игнорирования кэша?Или есть какой-либо другой способ принудительного обновления с использованием объекта установки?
My problem is similar to this : http://www.eclipse.org/forums/index.php/m/660750/
Заранее спасибо.