Bom dia pessoal, estou com dificuldades ao injetar meu dao na logic. De acordo com o site, só é possível fazer a injeção através do construtor, e o exemplo dado do que colocar no xml é assim:
<bean id="org.vraptor.spring.model.SystemUser" class="org.vraptor.spring.model.SystemUser"/>
Mas no meu dao preciso da SessionFactory, o que normalmente eu faria assim:
<bean id="clienteDao" class="br.com.abc.dao.ClienteDao">
<property name="sessionFactory" ref="meuSessionFactory"/>
</bean>
Então, tentei assim, e não funcionou:
<bean id="br.com.abc.dao.ClienteDao" class="br.com.abc.dao.ClienteDao">
<property name="sessionFactory" ref="meuSessionFactory"/>
</bean>
A Exception que recebo é a seguinte:
10:23:18,661 DEBUG [ComponentLookupInterceptor] Instantiating class org.vraptor.spring.logic.HomeComponent
10:23:18,661 DEBUG [DefaultLogicRequest ] key not found in any contexts: br.com.suprax.ews.dao.ClienteDao
10:23:18,661 DEBUG [VRaptorServlet ] Logic exception.
org.vraptor.LogicException: Unable to fill value for key br.com.abc.dao.ClienteDao
at org.vraptor.interceptor.ComponentLookupInterceptor.intercept(ComponentLookupInterceptor.java:68)
at org.vraptor.core.InterceptorsLogicFlow.execute(InterceptorsLogicFlow.java:72)
at org.vraptor.interceptor.FlashScopeInterceptor.intercept(FlashScopeInterceptor.java:22)
at org.vraptor.core.InterceptorsLogicFlow.execute(InterceptorsLogicFlow.java:72)
at org.vraptor.interceptor.RegisterAttributesInteceptor.intercept(RegisterAttributesInteceptor.java:38)
at org.vraptor.core.InterceptorsLogicFlow.execute(InterceptorsLogicFlow.java:72)
at org.vraptor.core.VRaptorExecution.execute(VRaptorExecution.java:98)
at org.vraptor.core.DefaultController.execute(DefaultController.java:46)
at org.vraptor.VRaptorServlet.service(VRaptorServlet.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:54)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: org.vraptor.component.ComponentInstantiationException: Unable to fill value for key br.com.abc.dao.ClienteDao
at org.vraptor.component.ComponentConstructor.newInstance(ComponentConstructor.java:39)
at org.vraptor.interceptor.ComponentLookupInterceptor.intercept(ComponentLookupInterceptor.java:51)
... 36 more
Alguém sabe a forma correta de fazer isso? Obrigado! :thumbup: