2014-10-15 5 views
1

Как отключить кеширование Apache Olingo 2.0?Как отключить кеширование Apache Olingo OData 2.0?

Веб-приложение работает в Tomcat 7 и использует MySQL. Он построен на основе процессора Apache Olingo OData JPA.

Когда я обновляю запись данных в базе данных, я могу правильно найти эту запись данных с таким типом запроса: «GET /interactive-riga-odata/webservices.svc/Statuss?$filter=(Updated%20gt%20datetime % 272014-10-15T12: 25: 44.054% 27) HTTP/1.1 "

Проблема в том, что я получаю кэшированную предыдущую версию этой записи данных, даже если во время запроса фильтрации она была выбрана на основе новых значений ,

ответ

1

Оказалось, что кеш EclipseLink ORM должен быть отключен или опущен.

Отключение это может быть путем добавления аннотаций в файлы модели, как это:

@Entity 
@Cacheable(false) 
public class Employee { 

Или, поставив одну из этих строк в persistance.xml файле:

<property name="eclipselink.cache.shared.default" value="false"/> 

<shared-cache-mode>NONE</shared-cache-mode> 

Если пытаться создать решение с кэшированием данных, некоторые веб-службы могут быть использованы для активации недействительности кеша после некоторых изменений в базе данных (приложение интерфейса администратора подключает веб-службы, чтобы сообщить им, что данные MySQL изменились).