Do you have an import statement for importing TipoCaracteristica? I see you are already using TipoMolde.CABELO which I assume is another public static variable in the TipoMolde class.
If none of these work can you post your drl file? Rahul --- Anderson Pazza Mello <[EMAIL PROTECTED]> wrote: > Yes I'm Brazilian.... > I need to improve my english I now hehehe > > About the problem... I solved it. > > But now I'm getting this error when I use a static > property in the rules: > > Exception in thread "AWT-EventQueue-0" > org.drools.RuntimeDroolsException: > Exception executing predicate > [EMAIL PROTECTED] > at > org.drools.rule.PredicateConstraint.isAllowed( > PredicateConstraint.java:197) > at > org.drools.reteoo.FromNode.assertTuple(FromNode.java:70) > at > org.drools.reteoo.SingleTupleSinkAdapter.propagateAssertTuple( > SingleTupleSinkAdapter.java:29) > at > org.drools.reteoo.EvalConditionNode.assertTuple( > EvalConditionNode.java:150) > at > org.drools.reteoo.SingleTupleSinkAdapter.propagateAssertTuple( > SingleTupleSinkAdapter.java:20) > at > org.drools.reteoo.FromNode.assertTuple(FromNode.java:87) > at > org.drools.reteoo.SingleTupleSinkAdapter.propagateAssertTuple( > SingleTupleSinkAdapter.java:20) > at > org.drools.reteoo.FromNode.assertTuple(FromNode.java:87) > at > org.drools.reteoo.SingleTupleSinkAdapter.propagateAssertTuple( > SingleTupleSinkAdapter.java:20) > at > org.drools.reteoo.FromNode.assertTuple(FromNode.java:87) > . > . > . > > Caused by: org.mvel.PropertyAccessException: unable > to resolve property: > unable to resolve token: > TipoCaracteristica.CABELO_TOTALMENTE_CALVO > at > org.mvel.ast.PropertyASTNode.initializePropertyNode( > PropertyASTNode.java:86) > at > org.mvel.ast.PropertyASTNode.getReducedValueAccelerated( > PropertyASTNode.java:23) > at > org.mvel.ast.BinaryOperation.getReducedValueAccelerated( > BinaryOperation.java:20) > at > org.mvel.MVELRuntime.execute(MVELRuntime.java:88) > at > org.mvel.CompiledExpression.getValue(CompiledExpression.java:99) > at > org.mvel.MVEL.executeExpression(MVEL.java:219) > at > org.drools.base.mvel.MVELPredicateExpression.evaluate( > MVELPredicateExpression.java:36) > at > org.drools.rule.PredicateConstraint.isAllowed( > PredicateConstraint.java:191) > ... 44 more > > Example: > > Property : > public class TipoCaracteristica implements > java.io.Serializable{ > . > . > > public static int CABELO_TOTALMENTE_CALVO = 37; > . > . > . > } > > rule: > > rule "CABELO_TOTALMENTE_CALVO resposta nao / Chama > Tipo de Cabelo" > salience 90 > when > e : Especialista(perguntado == false) > Especialista( $retrato : retratoUser) > Retrato($lstCaracRetrato : lstCarac) from > $retrato > Retrato($lstMolde : lstMolde) from $retrato > Molde(tipoMolde.codTipMolde == > TipoMolde.CABELO && $lstCaracMolde: > lstCarac) from $lstMolde > //CABELO_TIPO = 10 > eval(naoPerguntou($lstCaracMolde, 10)) > //CABELO_TOTALMENTE_CALVO = 37 e > RESPOSTA_SIM = 154 > Caracteristica(tipCarac.codTipCarac == > TipoCaracteristica.CABELO_TOTALMENTE_CALVO && > valor.codValor == 154) from > $lstCaracMolde > then > > buscarMontarPergunta(e,Pergunta.CABELO_TIPO,Especialista.CABELO); > e.perguntado = true; > update(e); > end > > I get some statics properties like > "TipoMolde.CABELO" without errors, but I > can't use the properties from this class > (TipoCaracteristica). Did you know > why? > If I use de value like this "valor.codValor == 154", > I have no problem. > > 2007/10/29, Edson Tirelli <[EMAIL PROTECTED]>: > > > > > > Anderson, > > > > What is the error? Can you provide a self > contained example? > > Using the "from CE" as showed before works. > > > > BTW, are you Brazilian? Your name sounds like > a Brazilian name. > > > > []s > > Edson > > > > 2007/10/27, Anderson Pazza Mello > <[EMAIL PROTECTED]>: > > > > > > How can I test all elements of the list? > > > Can I need to use something like "for (int > i.....)"? > > > > > > I'm trying to do that but it is not working... > > > > > > "Caracteristica( codCarac != 0 ) from > $caracList" > > > > > > > > > > > > My test: > > > > > > e : Especialista (perguntado == false) > > > Especialista( $moldeList : > retratoUser.lstMolde ) > > > Molde( tipoMolde == TipoMolde.CABELO) > from $moldeList > > > > > > > > > When the property "tipoMolde == > TipoMolde.CABELO" the rule must to be > > > fired. The List $moldeList has 5 elements. > > > > > > any idea? > > > > > > > > > 2007/10/3, Edson Tirelli < [EMAIL PROTECTED]>: > > > > > > > > Use the "from" CE: > > > > > > > > rule "This rule will fire once for each > Caracteristica whose codCarac > > > > is != 0" > > > > when > > > > Especialista( $caracList : > retratoUser.lstCarac ) > > > > Caracteristica( codCarac != 0 ) from > $caracList > > > > then > > > > ... > > > > end > > > > > > > > []s > > > > Edson > > > > > > > > 2007/10/3, Bhattacharya, Sougata < > [EMAIL PROTECTED] > > > > >: > > > > > > > > > > If I want to test for all ith element, > > > > > > > > > > Like this > > > > > > > > > > > > > > > > > > > > rule "Test" > > > > > > > > > > when > > > > > e : > Especialista(retratoUser.lstCarac.get(i).codCarac != > 0) > > > > > then > === message truncated ===> _______________________________________________ > rules-users mailing list > rules-users@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/rules-users > _______________________________________________ rules-users mailing list rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users