Pessoal estou com um problema bem estranho e intermitente , a logica geral do sistema é :
O cara insere e eu dou um redirect pra edicao pra eles ver se os dados inputados ficaram corretos entao a logica é a seguinte
@Restrict
public void form() {
result.include("tipoPessoaJuridicaList",
this.repositoryTipoPessoaJuridica.listAll());
}
@Restrict
@Path("edit/{instituicao.id}")
public void edit(Instituicao instituicao) {
result.include("instituicao", repositoryInstituicao.load(instituicao));
result.forwardTo(this).form();
}
@Post
public void saveOrUpdate(Instituicao instituicao) {
instituicao.setUsuario(this.session.getUsuario());
result.include("operation",
repositoryInstituicao.saveOrUpdate(instituicao));
result.redirectTo(this).edit(instituicao);
}
No redirect a url é chamada corretamente
URL : http://…/instituicao/edit/4
o parametro existe no request também
instituicao.id:4
Mesmo assim de vez em quando ele lanca esta exception
Exception :
br.com.caelum.vraptor.InterceptionException: exception raised, check root cause for details: br.com.caelum.vraptor.proxy.ProxyInvocationException: org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/jsp/instituicao/form.jsp
at line 7 4: 5: 6: 7: 9: 10: Stacktrace:
at br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:96)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.ParametersInstantiatorInterceptor.intercept(ParametersInstantiatorInterceptor.java:96)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.gov.sp.defensoria.common.vraptor.hibernate.HibernateTransactionInterceptor.intercept(HibernateTransactionInterceptor.java:37)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.gov.sp.defensoria.common.vraptor.interceptor.RestrictInterceptor.intercept(RestrictInterceptor.java:52)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:67)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.gov.sp.defensoria.common.vraptor.interceptor.ErrorInterceptor.intercept(ErrorInterceptor.java:57)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.gov.sp.defensoria.common.vraptor.interceptor.NoCacheInterceptor.intercept(NoCacheInterceptor.java:36)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.gov.sp.defensoria.common.vraptor.interceptor.AuthenticationInterceptor.intercept(AuthenticationInterceptor.java:39)
at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:59)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)
at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)
at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)
at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)
at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:91)
at br.com.caelum.vraptor.ioc.guice.GuiceProvider.provideForRequest(GuiceProvider.java:82)
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:88)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1423)
at br.com.jslsolucoes.profiler.web.filter.WebProfiler.doFilter(WebProfiler.java:35)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1423)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:450)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:564)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:213)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1083)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:379)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:175)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1017)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:227)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:445)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:260)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:225)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnection.java:358)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:596)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:527)
at java.lang.Thread.run(Thread.java:724)
Caused by: br.com.caelum.vraptor.proxy.ProxyInvocationException: org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/jsp/instituicao/form.jsp
at line 7 4: 5: 6: 7: 9: 10: Stacktrace:
at br.com.caelum.vraptor.view.DefaultLogicResult$1.intercept(DefaultLogicResult.java:110)
at br.com.caelum.vraptor.proxy.JavassistProxifier$2.invoke(JavassistProxifier.java:95)
at br.gov.sp.defensoria.convenio.controller.InstituicaoController_$$_javassist_187.form(InstituicaoController_$$_javassist_187.java)
at br.gov.sp.defensoria.convenio.controller.InstituicaoController.edit(InstituicaoController.java:79)
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 br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:61) ... 68 more
Caused by: org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/jsp/instituicao/form.jsp
at line 7 4: 5: 6: 7: 9: 10: Stacktrace:
at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:412)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1452)
at br.com.caelum.vraptor.core.DefaultStaticContentHandler.deferProcessingToContainer(DefaultStaticContentHandler.java:74)
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:79)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1423)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:450)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:138)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:582)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:213)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1083)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:379)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:175)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1017)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:261)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:101)
at br.com.caelum.vraptor.view.DefaultLogicResult$1.intercept(DefaultLogicResult.java:101) ... 76 more
Caused by: javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: javax.el.ELException: Error reading 'id' on type br.gov.sp.defensoria.convenio.model.Instituicao_$$_javassist_55
at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:861)
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:794)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp._jspService(form_jsp.java:112)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) ... 96 more
Caused by: javax.servlet.jsp.JspException: javax.el.ELException: Error reading 'id' on type br.gov.sp.defensoria.convenio.model.Instituicao_$$_javassist_55
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp$Helper.invoke(form_jsp.java:1886)
at org.apache.jsp.tag.meta.http_003a.tagria_com_br.tags.html.html.form.form_tag.doTag(form_tag.java:540)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp._jspx_meth_html_005fform_005f0(form_jsp.java:150)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp.access$0(form_jsp.java:134)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp$Helper.invoke0(form_jsp.java:1303)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp$Helper.invoke(form_jsp.java:1798)
at org.apache.jsp.tag.meta.http_003a.tagria_com_br.tags.html.html.view_tag._jspx_meth_c_005fif_005f1(view_tag.java:269)
at org.apache.jsp.tag.meta.http_003a.tagria_com_br.tags.html.html.view_tag.doTag(view_tag.java:177)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp._jspx_meth_html_005fview_005f0(form_jsp.java:129)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp._jspService(form_jsp.java:103) ... 99 more
Caused by: javax.el.ELException: Error reading 'id' on type br.gov.sp.defensoria.convenio.model.Instituicao_$$_javassist_55
at javax.el.BeanELResolver.getValue(BeanELResolver.java:87)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)
at org.apache.el.parser.AstValue.getValue(AstValue.java:123)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:938)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp._jspx_meth_html_005fformHidden_005f0(form_jsp.java:167)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp.access$4(form_jsp.java:155)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp$Helper.invoke1(form_jsp.java:1331)
at org.apache.jsp.WEB_002dINF.jsp.instituicao.form_jsp$Helper.invoke(form_jsp.java:1801) ... 108 more
Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [br.gov.sp.defensoria.convenio.model.Instituicao#4]
at org.hibernate.internal.SessionFactoryImpl$1$1.handleEntityNotFound(SessionFactoryImpl.java:244)
at org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:261)
at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:175)
at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:285)
at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:185)
at br.gov.sp.defensoria.convenio.model.Instituicao_$$_javassist_55.getId(Instituicao_$$_javassist_55.java)
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 javax.el.BeanELResolver.getValue(BeanELResolver.java:83) ... 116 more
O erro é lancado so que se eu olhar no banco o registro id 4 por exemplo existe e esta gravado corretamente apesar de ele falar que a causa foi
(Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [br.gov.sp.defensoria.convenio.model.Instituicao#4] )
Alguma luz do que possa ser ? Algum problema entre o commit e o redirect será ? Por exemplo de o commit estar demorando mais que o redirect (causando o org.hibernate.ObjectNotFoundException) ? Isso é possível ? O problema é intermitente , ou seja ,
acontece as vezes só .
Estou usando o plugin vraptor-hibernate-4