Vraptor 4 + Hibernate Search + CDI + Tomcat

0 respostas
desenvolvimentoprogramaçãojava
F

Pessoal , boa noite alguém sabe me dizer como resolvo a exception abaixo? Estou criando uma aplicação para estudar o VRaptor 4, CDI e o Hibernate Search. Apesar da aplicação subir, quando eu chamo a página que contem uma lista que estou tentando recuperar com o FullTextSession ocorre a exception abaixo.

Agradeço se alguém puder me ajudar.

Classe

@RequestScoped
public class ContatoRepositoryImpl implements ContatoRepository {

@Inject
private Session session;

@Override
public void salvar(Contato contato) {
	session.save(contato);
}

@Override
public List<Contato> listar(Filtro filtro) throws Exception {

	FullTextSession fullTextSession = Search.getFullTextSession(session);
	fullTextSession.createIndexer().startAndWait();

	QueryBuilder qb = fullTextSession.getSearchFactory().buildQueryBuilder().forEntity(Contato.class).get();

	org.apache.lucene.search.Query luceneQuery = qb.keyword().onFields("nome", "email", "observacao").matching(filtro.getSearchText()).createQuery();

	org.hibernate.Query query = fullTextSession.createFullTextQuery(luceneQuery, Contato.class);

	return query.list();

 }
}

Exception

java.lang.ClassCastException: org.jboss.weld.proxies.Serializable$Session$SharedSessionContract$[telefone removido]$Proxy$_$$<em>WeldClientProxy cannot be cast to org.hibernate.engine.spi.SessionImplementor

at org.hibernate.search.impl.FullTextSessionImpl.(FullTextSessionImpl.java:66)

at org.hibernate.search.Search.getFullTextSession(Search.java:45)

at br.com.fabiano.repository.impl.ContatoRepositoryImpl.listar(ContatoRepositoryImpl.java:31)

at br.com.fabiano.repository.impl.ContatoRepositoryImpl$Proxy$</em>$$<em>WeldClientProxy.listar(Unknown Source)

at br.com.fabiano.controller.IndexController.listar(IndexController.java:42)

at br.com.fabiano.controller.IndexController$Proxy$</em>$$<em>WeldClientProxy.listar(Unknown Source)

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

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

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

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

at net.vidageek.mirror.provider.java.PureJavaMethodReflectionProvider.invoke(PureJavaMethodReflectionProvider.java:38)

at net.vidageek.mirror.invoke.MethodHandlerByMethod.withArgs(MethodHandlerByMethod.java:54)

at br.com.caelum.vraptor.observer.ExecuteMethod.execute(ExecuteMethod.java:87)

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

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

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

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

at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)

at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:266)

at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:253)

at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:232)

at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:169)

at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:165)

at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:119)

at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:112)

at org.jboss.weld.event.EventImpl.fire(EventImpl.java:83)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:78)

at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:75)

at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor$Proxy$</em>$$<em>WeldClientProxy.intercept(Unknown Source)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:58)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:83)

at br.com.caelum.vraptor.core.DefaultInterceptorStack$Proxy$</em>$$<em>WeldClientProxy.next(Unknown Source)

at br.com.caelum.vraptor.interceptor.DefaultSimpleInterceptorStack.next(DefaultSimpleInterceptorStack.java:49)

at br.com.caelum.vraptor.interceptor.DefaultSimpleInterceptorStack$Proxy$</em>$$<em>WeldClientProxy.next(Unknown Source)

at br.com.caelum.vraptor.hibernate.HibernateTransactionInterceptor.intercept(HibernateTransactionInterceptor.java:67)

at br.com.caelum.vraptor.hibernate.HibernateTransactionInterceptor$Proxy$</em>$$<em>WeldClientProxy.intercept(Unknown Source)

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

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

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

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

at net.vidageek.mirror.provider.java.PureJavaMethodReflectionProvider.invoke(PureJavaMethodReflectionProvider.java:38)

at net.vidageek.mirror.invoke.MethodHandlerByMethod.withArgs(MethodHandlerByMethod.java:54)

at br.com.caelum.vraptor.interceptor.StepInvoker.invokeMethod(StepInvoker.java:49)

at br.com.caelum.vraptor.interceptor.StepInvoker.tryToInvoke(StepInvoker.java:40)

at br.com.caelum.vraptor.interceptor.StepInvoker$Proxy$</em>$$<em>WeldClientProxy.tryToInvoke(Unknown Source)

at br.com.caelum.vraptor.interceptor.InterceptorExecutor.executeAround(InterceptorExecutor.java:75)

at br.com.caelum.vraptor.interceptor.InterceptorExecutor$Proxy$</em>$$<em>WeldClientProxy.executeAround(Unknown Source)

at br.com.caelum.vraptor.interceptor.AspectStyleInterceptorHandler.execute(AspectStyleInterceptorHandler.java:85)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:83)

at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:98)

at br.com.caelum.vraptor.interceptor.FlashInterceptor$Proxy$</em>$$<em>WeldClientProxy.intercept(Unknown Source)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:58)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:83)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.start(DefaultInterceptorStack.java:93)

at br.com.caelum.vraptor.core.DefaultInterceptorStack$Proxy$</em>$$_WeldClientProxy.start(Unknown Source)

at br.com.caelum.vraptor.observer.RequestHandlerObserver.handle(RequestHandlerObserver.java:93)

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

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

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

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

at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)

at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:266)

at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:253)

at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:232)

at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:169)

at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:165)

at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:119)

at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:112)

at org.jboss.weld.event.EventImpl.fire(EventImpl.java:83)

at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:123)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:218)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1087)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Thread.java:745)
Criado 7 de março de 2017
Respostas 0
Participantes 1