vraptor-hibernate plugin

15 views
Skip to first unread message

Marcelo Venancio

unread,
Nov 5, 2015, 7:00:03 AM11/5/15
to caelum-vraptor
Bom dia!

Estou alterando a session factory (hibernate utils) da minha aplicação pelo plugin do hibernate porém estou encontrando problemas que não estou conseguindo resolver, já li vários posts sobre o assunto mas ainda não encontrei solução, eu entendo que o erro trata-se da não implementação de uma session creator, porém eu fiz tudo conforme instruções da documentação e dos posts que li. O jar está no lugar correto, meu web.xml contêm as linhas necessárias, exclui o hibernateUtils da minha aplicação e tudo que é injetado no constructor contêm a anotação @Component. Outro detalhe é o uso do guice para DI, antes estava usando o spring e o erro é o mesmo, segue abaixo:

GRAVE: Exception starting filter vraptor
com.google.inject.CreationException: Guice creation errors:

1) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa01DAO.<init>(Aa01DAO.java:18)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

2) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa02DAO.<init>(Aa02DAO.java:15)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

3) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa031DAO.<init>(Aa031DAO.java:18)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

4) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa03DAO.<init>(Aa03DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

5) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa04DAO.<init>(Aa04DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

6) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa05DAO.<init>(Aa05DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

7) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa06DAO.<init>(Aa06DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

8) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa07DAO.<init>(Aa07DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

9) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa08DAO.<init>(Aa08DAO.java:18)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

10) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa104DAO.<init>(Aa104DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

11) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa1051DAO.<init>(Aa1051DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

12) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa1052DAO.<init>(Aa1052DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

13) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa105DAO.<init>(Aa105DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

14) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa106DAO.<init>(Aa106DAO.java:13)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

15) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa10DAO.<init>(Aa10DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

16) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa11DAO.<init>(Aa11DAO.java:19)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

17) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa12DAO.<init>(Aa12DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

18) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa13DAO.<init>(Aa13DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

19) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa14DAO.<init>(Aa14DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

20) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa15DAO.<init>(Aa15DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

21) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa16DAO.<init>(Aa16DAO.java:15)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

22) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.common.daos.Aa17DAO.<init>(Aa17DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

23) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.evento.daos.Aa22DAO.<init>(Aa22DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

24) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.evento.daos.Aa23DAO.<init>(Aa23DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

25) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.evento.daos.Aa25DAO.<init>(Aa25DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

26) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.evento.daos.Aa30DAO.<init>(Aa30DAO.java:14)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

27) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.evento.daos.Aa35DAO.<init>(Aa35DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

28) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da10DAO.<init>(Da10DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

29) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da11DAO.<init>(Da11DAO.java:16)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

30) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da12DAO.<init>(Da12DAO.java:17)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

31) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da131DAO.<init>(Da131DAO.java:14)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

32) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da13DAO.<init>(Da13DAO.java:19)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

33) No implementation for org.hibernate.Session was bound.
  while locating org.hibernate.Session
    for parameter 0 at br.com.igreja.financeiro.daos.Da14DAO.<init>(Da14DAO.java:20)
  at br.com.caelum.vraptor.ioc.guice.GuiceComponentRegistry.bindToConstructor(GuiceComponentRegistry.java:151)

33 errors
    at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:435)
    at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:154)
    at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106)
    at com.google.inject.Guice.createInjector(Guice.java:95)
    at com.google.inject.Guice.createInjector(Guice.java:83)
    at br.com.caelum.vraptor.ioc.guice.GuiceProvider.start(GuiceProvider.java:97)
    at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:119)
    at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:113)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4583)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

Nov 05, 2015 9:05:41 AM org.apache.catalina.core.StandardContext startInternal
GRAVE: One or more Filters failed to start. Full details will be found in the appropriate container log file
Nov 05, 2015 9:05:41 AM org.apache.catalina.core.StandardContext startInternal
GRAVE: Context [/Igreja] startup failed due to previous errors
Nov 05, 2015 9:05:41 AM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
ADVERTÊNCIA: The web application [Igreja] appears to have started a thread named [com.google.inject.internal.util.$Finalizer] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 java.lang.Object.wait(Native Method)
 java.lang.ref.ReferenceQueue.remove(Unknown Source)
 java.lang.ref.ReferenceQueue.remove(Unknown Source)
 com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)


web.xml


<?xml version="1.0" encoding="UTF-8"?>
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee"
xmlns:jsp="http://java.sun.com/xml/ns/javaee/jsp"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
   
<display-name>Igreja</display-name>

     
<context-param>
       
<param-name>br.com.caelum.vraptor.packages</param-name>
           
<param-value>
               br.com.caelum.vraptor.http.iogi
               br.com.caelum.vraptor.util.hibernate
           
</param-value>
     
</context-param>
 
     
<context-param>
       
<param-name>br.com.caelum.vraptor.encoding</param-name>
       
<param-value>UTF-8</param-value>
     
</context-param>
     
     
<filter>
       
<filter-name>vraptor</filter-name>
       
<filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
     
</filter>
     
     
<filter-mapping>
       
<filter-name>vraptor</filter-name>
       
<url-pattern>/*</url-pattern>
       
<dispatcher>FORWARD</dispatcher>
       
<dispatcher>REQUEST</dispatcher>
     
</filter-mapping>
     
     
<jsp-config>
       
<jsp-property-group>
             
<url-pattern>*.jsp</url-pattern>
             
<page-encoding>UTF-8</page-encoding>
             
<include-prelude>/WEB-INF/jsp/prelude.jspf</include-prelude>
       
</jsp-property-group>
     
</jsp-config>
     
     
<session-config>
       
<session-timeout>30</session-timeout>
     
</session-config>
     
     
<welcome-file-list>
       
<welcome-file>index.jsp</welcome-file>
     
</welcome-file-list>
     
     
<servlet>
       
<servlet-name>servletImageUrl</servlet-name>
       
<servlet-class>br.com.igreja.kernell.ServletImageUrl</servlet-class>
     
</servlet>
     
     
<servlet-mapping>
       
<servlet-name>servletImageUrl</servlet-name>
       
<url-pattern>/imageUrl</url-pattern>
     
</servlet-mapping>
</web-app>




Um DAO qualquer:


@Component
public class Aa01DAO extends AbstractDAO<Aa01> {
   
   
public Aa01DAO(Session session) {
       
super(session);
   
}
   
   
public List<Aa01> findAll() {
       
return session.createQuery("FROM Aa01 aa01 ORDER BY aa01.aa01email").list();
   
}
   
   
public Aa01 findByUniqueKey(String emailAa01) {
       
return (Aa01) session.createCriteria(Aa01.class)
                                 
.add(Restrictions.eq("emailAa01", emailAa01))
                                 
.uniqueResult();
   
}
}

Obrigado!!!
Reply all
Reply to author
Forward
0 new messages