<html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div>we use drools 5.4.0 on JBoss AS 7.1.</div>

<div>&nbsp;</div>

<div>Our rules are defined in excel sheets. we use janino to compile them. class caching is enabled.</div>

<div>&nbsp;</div>

<div>after some time of execution, one day or&nbsp;more,&nbsp;suddenly we got following stacktrace</div>

<div>&nbsp;</div>

<div>2015-04-10 07:11:26,482 [http--0.0.0.0-40000-55]ERROR (de.mypackage.modules.mwf.MWFView) - error gotowfindex: java.lang.reflect.InvocationTargetException<br/>
&nbsp;at sun.reflect.GeneratedMethodAccessor1736.invoke(Unknown Source)<br/>
&nbsp;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br/>
&nbsp;at java.lang.reflect.Method.invoke(Method.java:606)<br/>
&nbsp;at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)<br/>
&nbsp;at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)<br/>
&nbsp;at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.bpm.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:51)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)<br/>
&nbsp;at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)<br/>
&nbsp;at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)<br/>
&nbsp;at de.mypackage.application.session.PageBean_&#36;&#36;_javassist_seam_15.setCurrent(PageBean_&#36;&#36;_javassist_seam_15.java)<br/>
&nbsp;at de.mypackage.modules.mwf.MWFView.gotowfindex(MWFView.java:1430)<br/>
&nbsp;at sun.reflect.GeneratedMethodAccessor2015.invoke(Unknown Source)<br/>
&nbsp;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br/>
&nbsp;at java.lang.reflect.Method.invoke(Method.java:606)<br/>
&nbsp;at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)<br/>
&nbsp;at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)<br/>
&nbsp;at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.bpm.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:51)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)<br/>
&nbsp;at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)<br/>
&nbsp;at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)<br/>
&nbsp;at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)<br/>
&nbsp;at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)<br/>
&nbsp;at de.mypackage.modules.mwf.MWFView_&#36;&#36;_javassist_seam_16.gotowfindex(MWFView_&#36;&#36;_javassist_seam_16.java)<br/>
&nbsp;at sun.reflect.GeneratedMethodAccessor3825.invoke(Unknown Source)<br/>
&nbsp;at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)<br/>
&nbsp;at java.lang.reflect.Method.invoke(Method.java:606)<br/>
&nbsp;at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335)<br/>
&nbsp;at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348)<br/>
&nbsp;at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)<br/>
&nbsp;at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)<br/>
&nbsp;at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)<br/>
&nbsp;at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)<br/>
&nbsp;at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)<br/>
&nbsp;at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)<br/>
&nbsp;at javax.faces.component.UICommand.broadcast(UICommand.java:387)<br/>
&nbsp;at org.ajax4jsf.component.AjaxActionComponent.broadcast(AjaxActionComponent.java:55)<br/>
&nbsp;at org.ajax4jsf.component.UIDataAdaptorBase.broadcast(UIDataAdaptorBase.java:1387)<br/>
&nbsp;at org.richfaces.component.UIExtendedDataTable.broadcast(UIExtendedDataTable.java:92)<br/>
&nbsp;at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:329)<br/>
&nbsp;at org.ajax4jsf.component.AjaxViewRoot.broadcastEventsForPhase(AjaxViewRoot.java:304)<br/>
&nbsp;at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:261)<br/>
&nbsp;at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:474)<br/>
&nbsp;at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)<br/>
&nbsp;at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)<br/>
&nbsp;at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)<br/>
&nbsp;at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)<br/>
&nbsp;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)<br/>
&nbsp;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:83)<br/>
&nbsp;at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)<br/>
&nbsp;at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)<br/>
&nbsp;at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)<br/>
&nbsp;at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)<br/>
&nbsp;at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter&#36;FilterChainImpl.doFilter(SeamFilter.java:69)<br/>
&nbsp;at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)<br/>
&nbsp;at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)<br/>
&nbsp;at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)<br/>
&nbsp;at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)<br/>
&nbsp;at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)<br/>
&nbsp;at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:397)<br/>
&nbsp;at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)<br/>
&nbsp;at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)<br/>
&nbsp;at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)<br/>
&nbsp;at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)<br/>
&nbsp;at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)<br/>
&nbsp;at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)<br/>
&nbsp;at org.apache.coyote.http11.Http11Protocol&#36;Http11ConnectionHandler.process(Http11Protocol.java:671)<br/>
&nbsp;at org.apache.tomcat.util.net.JIoEndpoint&#36;Worker.run(JIoEndpoint.java:930)<br/>
&nbsp;at java.lang.Thread.run(Thread.java:744)<br/>
Caused by: java.lang.LinkageError: de/mypackage/authenticate/rights/Rule_Rights_239_51599bda43c244969d0d240d357d3d05<br/>
&nbsp;at de.mypackage.authenticate.rights.Rule_Rights_239_51599bda43c244969d0d240d357d3d05Eval2InvokerGenerated.evaluate(Unknown Source)<br/>
&nbsp;at de.mypackage.authenticate.rights.Rule_Rights_239_51599bda43c244969d0d240d357d3d05Eval2Invoker.evaluate(Unknown Source)<br/>
&nbsp;at org.drools.rule.EvalCondition.isAllowed(EvalCondition.java:114)<br/>
&nbsp;at org.drools.reteoo.EvalConditionNode.assertLeftTuple(EvalConditionNode.java:178)<br/>
&nbsp;at org.drools.reteoo.CompositeLeftTupleSinkAdapter.doPropagateAssertLeftTuple(CompositeLeftTupleSinkAdapter.java:232)<br/>
&nbsp;at org.drools.reteoo.CompositeLeftTupleSinkAdapter.propagateAssertLeftTuple(CompositeLeftTupleSinkAdapter.java:101)<br/>
&nbsp;at org.drools.reteoo.EvalConditionNode.assertLeftTuple(EvalConditionNode.java:183)<br/>
&nbsp;at org.drools.reteoo.CompositeLeftTupleSinkAdapter.doPropagateAssertLeftTuple(CompositeLeftTupleSinkAdapter.java:232)<br/>
&nbsp;at org.drools.reteoo.CompositeLeftTupleSinkAdapter.createAndPropagateAssertLeftTuple(CompositeLeftTupleSinkAdapter.java:116)<br/>
&nbsp;at org.drools.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.java:154)<br/>
&nbsp;at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:59)<br/>
&nbsp;at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:141)<br/>
&nbsp;at org.drools.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:497)<br/>
&nbsp;at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:382)<br/>
&nbsp;at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:235)<br/>
&nbsp;at org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:240)<br/>
&nbsp;at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:337)<br/>
&nbsp;at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:298)<br/>
&nbsp;at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:888)<br/>
&nbsp;at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:847)<br/>
&nbsp;at org.drools.reteoo.ReteooStatelessSession.execute(ReteooStatelessSession.java:187)<br/>
&nbsp;at de.mypackage.rules.RulesManager.processRightsRules(RulesManager.java:349)</div>

<div>&nbsp;</div>

<div>the rules file wasn&#39;t changed at all. after reloading/recompiling it everything was ok.</div>

<div>&nbsp;</div>

<div>i&#39;ve read about this .</div>

<div>&nbsp;</div>

<div><a href="https://issues.jboss.org/browse/JBRULES-3675">https://issues.jboss.org/browse/JBRULES-3675</a></div>

<div>&nbsp;</div>

<div>but the stacktrace there is&nbsp; a bit difference.</div>

<div>&nbsp;</div>

<div>any idea what is going on here?</div></div></body></html>