[rules-users] function call

Edson Tirelli tirelli at post.com
Wed Aug 29 08:03:15 EDT 2007


   I believe this problem is already fixed in trunk. You can download latest
build from here:

http://cruisecontrol.jboss.com/cc/artifacts/jboss-rules

    []s
    Edson

2007/8/29, hypnosat7 <ablarbi at yahoo.fr>:
>
>
> I try and change the dialect but it doesn't work
>
> rule "Your First Rule"
>         dialect "mvel"
>         when
>
>         then
>
>                 drools.rule.dialect="java"
>                 System.out.println(drools.getRule().getDialect());
>                 System.out.println("ok"+func());
>
>
> end
>
> the package still invalid :
> * (1,6) unable to resolve method using strict-mode:
> java.lang.Object.func(...)
> * (1,6) unable to resolve method using strict-mode:
> java.lang.Object.func(...)
>
>
>
> hypnosat7 wrote:
> >
> > Hi,
> >
> >   I have a simple rule :
> >
> > function String isTrue() {
> >       return "true";
> > }
> >
> > rule "new rule"
> > dialect "mvel"
> >       when
> >               eval(true)
> >       then
> >               System.out.println("passe"+isTrue());
> > end
> >
> > But it seems impossible to call function's :
> >
> > org.mvel.PropertyAccessException: failed to access property:
> > <<System.out.println("passe"+isTrue())>> in: null
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:137)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor
> (ReflectiveAccessorOptimizer.java:96)
> >       at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:194)
> >       at org.mvel.MVELRuntime.execute(MVELRuntime.java:87)
> >       at org.mvel.MVEL.executeDebugger(MVEL.java:327)
> >       at org.drools.base.mvel.MVELConsequence.evaluate(
> MVELConsequence.java:43)
> >       at org.drools.common.DefaultAgenda.fireActivation(
> DefaultAgenda.java:545)
> >       at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java
> :509)
> >       at
> > org.drools.common.AbstractWorkingMemory.fireAllRules(
> AbstractWorkingMemory.java:430)
> >       at
> > org.drools.common.AbstractWorkingMemory.fireAllRules(
> AbstractWorkingMemory.java:392)
> >       at mcmipih.rules.demo.service.TestDraft.main(TestDraft.java:37)
> > Caused by: org.mvel.PropertyAccessException: null pointer exception in
> > property: isTrue()
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:143)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor
> (ReflectiveAccessorOptimizer.java:96)
> >       at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:194)
> >       at
> > org.mvel.ast.BinaryOperation.getReducedValueAccelerated(
> BinaryOperation.java:20)
> >       at org.mvel.MVELRuntime.execute(MVELRuntime.java:87)
> >       at org.mvel.CompiledExpression.getValue(CompiledExpression.java
> :98)
> >       at
> > org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
> ReflectiveAccessorOptimizer.java:421)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:109)
> >       ... 10 more
> > Caused by: java.lang.NullPointerException
> >       at
> > org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
> ReflectiveAccessorOptimizer.java:429)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:109)
> >       ... 17 more
> > org.drools.spi.ConsequenceException: org.mvel.PropertyAccessException:
> > failed to access property: <<System.out.println("passe"+isTrue())>> in:
> > null
> >       at org.drools.common.DefaultAgenda.fireActivation(
> DefaultAgenda.java:549)
> >       at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java
> :509)
> >       at
> > org.drools.common.AbstractWorkingMemory.fireAllRules(
> AbstractWorkingMemory.java:430)
> >       at
> > org.drools.common.AbstractWorkingMemory.fireAllRules(
> AbstractWorkingMemory.java:392)
> >       at mcmipih.rules.demo.service.TestDraft.main(TestDraft.java:37)
> > Caused by: org.mvel.PropertyAccessException: failed to access property:
> > <<System.out.println("passe"+isTrue())>> in: null
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:137)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor
> (ReflectiveAccessorOptimizer.java:96)
> >       at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:194)
> >       at org.mvel.MVELRuntime.execute(MVELRuntime.java:87)
> >       at org.mvel.MVEL.executeDebugger(MVEL.java:327)
> >       at org.drools.base.mvel.MVELConsequence.evaluate(
> MVELConsequence.java:43)
> >       at org.drools.common.DefaultAgenda.fireActivation(
> DefaultAgenda.java:545)
> >       ... 4 more
> > Caused by: org.mvel.PropertyAccessException: null pointer exception in
> > property: isTrue()
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:143)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor
> (ReflectiveAccessorOptimizer.java:96)
> >       at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:194)
> >       at
> > org.mvel.ast.BinaryOperation.getReducedValueAccelerated(
> BinaryOperation.java:20)
> >       at org.mvel.MVELRuntime.execute(MVELRuntime.java:87)
> >       at org.mvel.CompiledExpression.getValue(CompiledExpression.java
> :98)
> >       at
> > org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
> ReflectiveAccessorOptimizer.java:421)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:109)
> >       ... 10 more
> > Caused by: java.lang.NullPointerException
> >       at
> > org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
> ReflectiveAccessorOptimizer.java:429)
> >       at
> >
> org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
> ReflectiveAccessorOptimizer.java:109)
> >       ... 17 more
> >
>
> --
> View this message in context:
> http://www.nabble.com/function-call-tf4346267.html#a12383032
> Sent from the drools - user mailing list archive at Nabble.com.
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>



-- 
  Edson Tirelli
  Software Engineer - JBoss Rules Core Developer
  Office: +55 11 3529-6000
  Mobile: +55 11 9287-5646
  JBoss, a division of Red Hat @ www.jboss.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070829/c7ff5667/attachment.html 


More information about the rules-users mailing list