Я нашел решение! Очень просто: просто используйте var actions;
вместо let actions;
для доступа к функции. let
ограничивает область видимости, поэтому она недоступна.
Больше информации здесь: В чем разница между использованием & quot; let & quot; и "var"?
Просто предположение здесь, но Вы могли бы попробовать
query.cacheQueryResults();
после создания его, но перед Вами getResultList
.
- MarkusQ
Я заставил кэш EclipseLink 1.0.1 работать путем добавления просто подсказки запроса:
Query query = em.createNamedQuery("Person.find");
query.setParameter("NAME", name);
query.setHint("eclipselink.cache-usage", "CheckCacheThenDatabase");
return (Person)query.getSingleResult();
Я не изменил объект вообще и еще не попытался настроить кэш с помощью аннотаций.
Описанные здесь решения не помогли мне. Но я заставил его работать с:
@Cache
@NamedQueries({@NamedQuery(
name = "State.findAll",
query = "SELECT s FROM State s",
hints = {
@QueryHint(name = QueryHints.QUERY_RESULTS_CACHE, value = HintValues.TRUE)
}
)})