worse case is we switch to java dialect, although we do need to use jbrms for rule maintenance. is there a way to force jbrms to use java dialect globally(i tried dialect "java" in the package header, but didn't seem to work)? we could force java dialect on each rule but we really want to avoid that. and what would be the down side of not using mvel dialect in jbrms?

thanks
Jeff


From: Edson Tirelli <tirelli@post.com>
To: Rules Users List <rules-users@lists.jboss.org>
Sent: Wednesday, November 19, 2008 6:46:09 AM
Subject: Re: [rules-users] intermittent error from mvel


   Jeff,

   What mvel version are you using? (take a look at the jar name)
   If it is not 1.3.9, try it out to check if the problem still happens.

   []s
   Edson

2008/11/19 hongyu lu <hl_107@yahoo.com>
Hi,

I am seeking some help here for a very weird issue we ran into with drools 4.0.7. The error is intermittent but once happens it will be consistent for the rest rule evaluation.

We have a fact object called com.like.rules.facts.AllocationFact. But somehow the class name was messed up when passed to mvel for accessor optimization:com.like.rules.facts.AllocationFact.facts.AllocationFact.facts.AllocationFac
t. Some parsing related problem? Any advice on how to debug this kind issues?

thanks a lot for your help!
Jeff

org.drools.spi.ConsequenceException: org.mvel.CompileException: class or
class reference not found:
com.like.rules.facts.AllocationFact.facts.AllocationFact.facts.AllocationFac
t()
   at
org.drools.base.DefaultConsequenceExceptionHandler.handleException(DefaultCo
nsequenceExceptionHandler.java:13)
   at
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:558)
   at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:518)
   at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.j
ava:475)
   at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.j
ava:439)
   at com.like.ab.ABServiceImpl.determineAttributes(ABServiceImpl.java:125)
   at com.like.ab.ABServiceImpl.getCustomer(ABServiceImpl.java:90)
   at com.like.ab.ABServiceImpl.getAttributes(ABServiceImpl.java:52)
   at
com.like.ab.ABRequestContextImpl.conditionallyInit(ABRequestContextImpl.java
:130)
   at com.like.ab.ABRequestContextImpl.<init>(ABRequestContextImpl.java:39)
   at com.like.ab.ABRequestContextImpl.<init>(ABRequestContextImpl.java:32)
   at
com.like.ab.ABServletRequestFilter.allocateLazyInitableRequestContext(ABServ
letRequestFilter.java:110)
   at
com.like.ab.ABServletRequestFilter.doFilter(ABServletRequestFilter.java:56)
   at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java
:70)
   at
com.like.web.LikeWWWRequestFilter.wrapWithLikeWWWRequestContext(LikeWWWReque
stFilter.java:114)
   at
com.like.web.LikeWWWRequestFilter.doFilter(LikeWWWRequestFilter.java:74)
   at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java
:70)
   at
com.like.web.ExceptionHandlerFilter.doFilter(ExceptionHandlerFilter.java:80)
   at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java
:70)
   at com.caucho.filters.XsltFilter.doFilter(XsltFilter.java:121)
   at com.like.web.LikeXsltFilter.doFilter(LikeXsltFilter.java:22)
   at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java
:70)
   at
com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:1
63)
   at
com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:
208)
   at
com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:259)
   at com.caucho.server.port.TcpConnection.run(TcpConnection.java:363)
   at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:490)
   at com.caucho.util.ThreadPool.run(ThreadPool.java:423)
   at java.lang.Thread.run(Thread.java:595)
Caused by: org.mvel.CompileException: class or class reference not found:
com.like.rules.facts.AllocationFact.facts.AllocationFact.facts.AllocationFac
t()
   at
org.mvel.optimizers.impl.asm.ASMAccessorOptimizer.optimizeObjectCreation(ASM
AccessorOptimizer.java:1842)
   at
org.mvel.ast.NewObjectNode.getReducedValueAccelerated(NewObjectNode.java:191
)
   at org.mvel.ExecutableAccessor.getValue(ExecutableAccessor.java:45)
   at
org.mvel.ast.TypedVarNode.getReducedValueAccelerated(TypedVarNode.java:43)
   at org.mvel.MVELRuntime.execute(MVELRuntime.java:90)
   at org.mvel.CompiledExpression.getValue(CompiledExpression.java:111)
   at org.mvel.MVEL.executeExpression(MVEL.java:235)
   at
org.drools.base.mvel.MVELConsequence.evaluate(MVELConsequence.java:48)
   at
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:554)
   ... 27 more



_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users



--
 Edson Tirelli
 JBoss Drools Core Development
 JBoss, a division of Red Hat @ www.jboss.com