<br> Need to see the full test case to be able to understand if it is a bug or not, because the expression in the LHS is using the ShadowProxy, while the one in the RHS is not... so, it may be a bug or it may not... depends when and how you are setting the upronto field.<br>
<br> []s<br> Edson<br><br><br><div><span class="gmail_quote">2008/2/16, <a href="mailto:mmquelo@gmail.com">mmquelo@gmail.com</a> <<a href="mailto:mmquelo@gmail.com">mmquelo@gmail.com</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Look at this....</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I have got a "ContractWrapper" fact inserted into
WM.</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">It wraps a "Contract" object and some "enums"
fields.</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">One of these fields is "upronto":</font></div>
<div><font face="Arial" size="2"></font> </div>
<blockquote dir="ltr" style="margin-right: 0px;">
<div><font face="Arial" size="2"><b><font color="#7f0055" size="2">
<p align="left">public</p></font></b></font><font size="2"> </font><b><font color="#7f0055" size="2">class</font></b><font size="2"> ContractWrapper </font><b><font color="#7f0055" size="2">extends</font></b><font size="2">
BaseOmPersistentWithAssignedId{
<p align="left">Contract </p></font><font color="#0000c0" size="2">mycontract</font><font size="2">=</font><b><font color="#7f0055" size="2">null</font></b><font size="2">;
<p align="left"></p>
<p align="left">...</p>
<p align="left"></p></font><font size="2">Pronto </font><font color="#0000c0" size="2">upronto</font><font size="2"> = </font><b><font color="#7f0055" size="2">null</font></b><font size="2">;
<p align="left"><strong><font color="#7f0055">...</font></strong></p></font><font size="2">
<p align="left"></p>
<p align="left"><em><getters and setters....></em></p></font><font size="2"></font><font size="2">
<p align="left"></p>
<p align="left"></p>
<p align="left"></p>
<p align="left"></p>
<p>...</p>
<p>}</p></font></div></blockquote>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">"upronto" is an insance of a "Pronto" java
enum:</font></div>
<div><font face="Arial" size="2"></font> </div>
<blockquote dir="ltr" style="margin-right: 0px;">
<div><b><font color="#7f0055" size="2">
<p align="left">public</p></font></b><font size="2"> </font><b><font color="#7f0055" size="2">enum</font></b><font size="2"> Pronto {</font><i><font color="#0000c0" size="2">
<p align="left">N</p></font></i><font size="2">,</font><i><font color="#0000c0" size="2">
<p align="left">UNKNOWN</p></font></i><font size="2">,</font><i><font color="#0000c0" size="2">
<p align="left">Y</p></font></i><font size="2">;
<p align="left">}</p></font></div></blockquote>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">"Pronto" can be : (Y, N, UNKNOWN)</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Here is the rule which reasons over this
enum:</font></div>
<div><font face="Arial" size="2">(ofcourse I have got a Request into WM as
well)</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"><em>rule "ScorePronto"<br>dialect
"mvel"<br>ruleflow-group "Scoring"<br> when<br>
$r:Request( $mc:mainContract != null )<br>
$cw_p:ContractWrapper($c_w_p:mycontract == $mc, eval(upronto !=
Pronto.Y))</em></font></div>
<div><font face="Arial" size="2"><em> then <br>
System.out.println("Test Result: "+($cw_p.upronto ==
Pronto.Y)) <br>end</em></font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Any guesses for the output???</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Well....</font></div>
<div><font face="Arial" size="2"></font><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"><strong>Test Result: true</strong></font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">HOW COMES???????????????????</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I mean ... the test "eval(upronto != Pronto.Y)"
returned "true".... It means that the rule</font></div>
<div><font face="Arial" size="2">engine sees upronto <> Pronto.Y!, doesn't
it??!!!!</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"><strong>So... why do I get "upronto == Pronto.Y" in
the RHS????</strong></font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">What
the.........&$%%&()%%$/%£....sorry....but having these</font></div>
<div><font face="Arial" size="2">kind of problems during saturday night is not so
pleaseant! </font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">T-T</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">I really hope you can help me with a
workaround to this issue.</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Bye</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2">Massi</font></div>
<div><font face="Arial" size="2"></font> </div>
<div><font face="Arial" size="2"></font> </div></div>
<br>_______________________________________________<br>rules-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br> Edson Tirelli<br> JBoss Drools Core Development<br> Office: +55 11 3529-6000<br> Mobile: +55 11 9287-5646<br> JBoss, a division of Red Hat @ <a href="http://www.jboss.com">www.jboss.com</a>