Я добавил следующую аннотацию для включения кеширования в одну из моих сущностей EJB3, чтобы протестировать кеширование с помощью ehCache, где я использую Hibernate в качестве поставщика сохраняемости:
....
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
@Entity
@Table(name = "F")
@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)
@NamedQueries({ @NamedQuery(name = "F.findAll", query = "SELECT f FROM F f")})
public class F implements Serializable {
.....
}
Я добавил следующее в файл persistence.xml:
<property name="hibernate.cache.provider_class" value="org.hibernate.cache.EhCacheProvider"/>
<property name="hibernate.cache.provider_configuration_file_resource_path" value="/ehcache.xml"/>
<property name="hibernate.cache.use_second_level_cache" value="true"/>
И когда я пытаюсь скомпилировать, я получаю следующую ошибку:
/ постоянство / F.class): предупреждение: невозможно
найти метод аннотации 'using ()' в
тип
'Org.hibernate.annotations.Cache':
файл класса для
org.hibernate.annotations.Cache not
найдено Исключение произошло в
компилятор (1.6.0_16). Пожалуйста, сообщите об ошибке
в соединении разработчика Java
(http://java.sun.com/webapps/bugreport)
после проверки Bug Parade для
дубликаты. Включите вашу программу и
следующая диагностика в вашем
отчет. Спасибо.
com.sun.tools.javac.code.Symbol $ CompletionFailure:
файл класса для
org.hibernate.annotations.CacheConcurrencyStrategy
не найдено
Может кто-нибудь помочь мне здесь и дать мне знать, что мне нужно делать или я делаю что-то не так в настоящее время?