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(a)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(a)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