Dúvida com cache de secundo nível

0 respostas
J

Estou tentando usar o cache de segundo nível do Hibernate na minha aplicação. Mas está dando o erro abaixo:

Caused by: javax.ejb.EJBException: WFLYEJB0442: Erro inesperado

at org.jboss.as.ejb3.tx.CMTTxInterceptor.handleExceptionInOurTx(CMTTxInterceptor.java:184)

at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:277)

at org.jboss.as.ejb3.tx.CMTTxInterceptor.required(CMTTxInterceptor.java:327)

at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:239)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.interceptors.CurrentInvocationContextInterceptor.processInvocation(CurrentInvocationContextInterceptor.java:41)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.invocationmetrics.WaitTimeInterceptor.processInvocation(WaitTimeInterceptor.java:43)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.security.SecurityContextInterceptor.processInvocation(SecurityContextInterceptor.java:100)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.interceptors.ShutDownInterceptorFactory$1.processInvocation(ShutDownInterceptorFactory.java:64)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.interceptors.LoggingInterceptor.processInvocation(LoggingInterceptor.java:66)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ee.component.NamespaceContextInterceptor.processInvocation(NamespaceContextInterceptor.java:50)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.interceptors.AdditionalSetupInterceptor.processInvocation(AdditionalSetupInterceptor.java:54)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.ContextClassLoaderInterceptor.processInvocation(ContextClassLoaderInterceptor.java:64)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

at org.wildfly.security.manager.WildFlySecurityManager.doChecked(WildFlySecurityManager.java:636)

at org.jboss.invocation.AccessCheckingInterceptor.processInvocation(AccessCheckingInterceptor.java:61)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.InterceptorContext.run(InterceptorContext.java:356)

at org.jboss.invocation.PrivilegedWithCombinerInterceptor.processInvocation(PrivilegedWithCombinerInterceptor.java:80)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

at org.jboss.as.ee.component.ViewService$View.invoke(ViewService.java:195)

at org.jboss.as.ee.component.ViewDescription$1.processInvocation(ViewDescription.java:185)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:73)

at br.gov.saude.core.bo.InformeBo$$$view1.listarValidos(Unknown Source)

at br.gov.saude.core.rest.impl.InformeResourceImpl.getValidos(InformeResourceImpl.java:58)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:497)

at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:139)

at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)

at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)

at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)

at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:395)

 32 more

Caused by: java.lang.AbstractMethodError: org.hibernate.cache.ehcache.internal.nonstop.NonstopAwareEntityRegionAccessStrategy.putFromLoad(Lorg/hibernate/engine/spi/SessionImplementor;Ljava/lang/Object;Ljava/lang/Object;JLjava/lang/Object;Z)Z

at org.hibernate.engine.internal.TwoPhaseLoad.doInitializeEntity(TwoPhaseLoad.java:208)

at org.hibernate.engine.internal.TwoPhaseLoad.initializeEntity(TwoPhaseLoad.java:128)

at org.hibernate.loader.Loader.initializeEntitiesAndCollections(Loader.java:1133)

at org.hibernate.loader.Loader.processResultSet(Loader.java:992)

at org.hibernate.loader.Loader.doQuery(Loader.java:930)

at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:336)

at org.hibernate.loader.Loader.doList(Loader.java:2617)

at org.hibernate.loader.Loader.doList(Loader.java:2600)

at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2429)

at org.hibernate.loader.Loader.list(Loader.java:2424)

at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:501)

at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:371)

at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:216)

at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1326)

at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)

at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:606)

at org.hibernate.jpa.internal.QueryImpl.getResultList(QueryImpl.java:483)

at br.gov.saude.core.dao.jpa.JpaInformeDao.listarValidos(JpaInformeDao.java:30)

at br.gov.saude.core.bo.rts.RtsInformeBo.listarValidos(RtsInformeBo.java:64)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:497)

at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:82)

at org.jboss.as.weld.ejb.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:93)

at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:63)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.invocationmetrics.ExecutionTimeInterceptor.processInvocation(ExecutionTimeInterceptor.java:43)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:47)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:437)

at org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:64)

at org.jboss.as.weld.ejb.EjbRequestScopeActivationInterceptor.processInvocation(EjbRequestScopeActivationInterceptor.java:83)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ee.concurrent.ConcurrentContextInterceptor.processInvocation(ConcurrentContextInterceptor.java:45)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.InitialInterceptor.processInvocation(InitialInterceptor.java:21)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)

at org.jboss.as.ee.component.interceptors.ComponentDispatcherInterceptor.processInvocation(ComponentDispatcherInterceptor.java:52)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)

at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:340)

at org.jboss.as.ejb3.tx.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:275)

 75 more

Segue abaixo minhas configurações:

<property name="hibernate.cache.use_second_level_cache" value="true"/>
  	<property name="hibernate.cache.use_query_cache" value="true"/>
  	<property name="hibernate.cache.region.factory_class" value="org.hibernate.cache.ehcache.EhCacheRegionFactory" />
  	<property name="net.sf.ehcache.configurationResourceName" value="/ehcache.xml" />
<dependency>
			<groupId>net.sf.ehcache</groupId>
			<artifactId>ehcache-core</artifactId>
			<version>2.6.11</version>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-ehcache</artifactId>
			<version>5.2.2.Final</version>
		</dependency>
		<dependency>
			<groupId>org.hibernate</groupId>
			<artifactId>hibernate-annotations</artifactId>
			<version>3.5.6-Final</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-simple</artifactId>
			<version>1.7.21</version>
		</dependency>
<?xml version="1.0" encoding="UTF-8"?>

<diskStore path="java.io.tmpdir/ehcache" />

<defaultCache maxEntriesLocalHeap="10000" eternal="false"
	timeToIdleSeconds="120" timeToLiveSeconds="120" diskSpoolBufferSizeMB="30"
	maxEntriesLocalDisk="10000000" diskExpiryThreadIntervalSeconds="120"
	memoryStoreEvictionPolicy="LRU" statistics="true">
	<persistence strategy="localTempSwap" />
</defaultCache>

<cache name="informe" maxEntriesLocalHeap="10000" eternal="false"
	timeToIdleSeconds="5" timeToLiveSeconds="10">
	<persistence strategy="localTempSwap" />
</cache>

<cache name="org.hibernate.cache.internal.StandardQueryCache"
	maxEntriesLocalHeap="5" eternal="false" timeToLiveSeconds="120">
	<persistence strategy="localTempSwap" />
</cache>

<cache name="org.hibernate.cache.spi.UpdateTimestampsCache"
	maxEntriesLocalHeap="5000" eternal="true">
	<persistence strategy="localTempSwap" />
</cache>
@Entity

@Table(name = TB_INFORME)

@XmlRootElement

@XmlAccessorType(XmlAccessType.FIELD)

@Cache(usage=CacheConcurrencyStrategy.NONSTRICT_READ_WRITE, region=informe)

public class Informe implements Serializable
Criado 2 de setembro de 2016
Respostas 0
Participantes 1