I'm fairly new to Drools so there may be an easier way to do this. I need to check to see if any one of a list of tags on an object are in another list of tags and am trying to do that with a function. the compiler tells me it can't compile my eval function:<div>
<br></div><div><span class="Apple-style-span" style="font-family: Helvetica; font-size: 12px; "><font color="#808000" size="2"><p align="left">#list any import classes here.</p></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left">
<font color="#960000" size="2"><b>import</b></font><font size="2"> com.cp.services.rules.sources.Person;</font></p><font size="2"></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left">
<font color="#960000" size="2"><b>import</b></font><font size="2"> com.cp.services.rules.actions.PersonActions;</font></p><font size="2"></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left">
<font color="#960000" size="2"><b>import</b></font><font size="2"> com.cp.rules.TagCodes;</font></p><font size="2"></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left">
<font color="#960000" size="2"><b>import</b></font><font size="2"> java.util.List;</font></p><font size="2"><p align="left"></p><p align="left"> </p></font><font color="#808000" size="2"><p align="left">#declare any global variables here</p>
</font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left"><font color="#960000" size="2"><b>global</b></font><font size="2"> com.cp.services.rules.actions.PersonActions personActions;</font></p>
<font size="2"><p align="left"></p></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left"><font color="#960000" size="2"><b>function</b></font><font size="2"> </font><b><font color="#960000" size="2">boolean</font></b><font color="#960000" size="2"></font><font size="2"> hasOneOf(List list1, String[] list2){</font></p>
<font size="2"></font><p align="left"><b><font color="#960000" size="2">for</font></b><font color="#960000" size="2"></font><font size="2"> (Object obj : list1) {</font></p><font size="2"><p align="left">String string = (String)obj;</p>
</font><p align="left"><b><font color="#960000" size="2">for</font></b><font color="#960000" size="2"></font><font size="2"> (</font><b><font color="#960000" size="2">int</font></b><font color="#960000" size="2"></font><font size="2"> j = 0; j < list2.length; j++) {</font></p>
<font size="2"></font><p align="left"><b><font color="#960000" size="2">if</font></b><font color="#960000" size="2"></font><font size="2"> (string != </font><b><font color="#960000" size="2">null</font></b><font color="#960000" size="2"></font><font size="2"> && string.equals(list2[j])) {</font></p>
<font size="2"></font><p align="left"><b><font color="#960000" size="2">return</font></b><font color="#960000" size="2"></font><font size="2"> </font><b><font color="#960000" size="2">true</font></b><font color="#960000" size="2"></font><font size="2">;</font></p>
<font size="2"><p align="left">}</p><p align="left">}</p><p align="left">}</p></font><p align="left"><b><font color="#960000" size="2">return</font></b><font color="#960000" size="2"></font><font size="2"> </font><b><font color="#960000" size="2">false</font></b><font color="#960000" size="2"></font><font size="2">;</font></p>
<font size="2"><p align="left">}</p><p align="left"></p></font><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><p align="left"><font color="#960000" size="2"><b>rule</b></font><font size="2"> </font><font color="#008000" size="2">"Engineering"</font></p>
<font color="#008000" size="2"></font><font size="2"></font><p align="left"><b><font color="#960000" size="2">dialect</font></b><font color="#960000" size="2"></font><font size="2"> </font><font color="#008000" size="2">"mvel"</font></p>
<font color="#008000" size="2"></font><font size="2"></font><p align="left"><b><font color="#960000" size="2">when</font></b></p><b><font color="#960000" size="2"></font></b><font color="#960000" size="2"></font><font size="2"></font><p align="left">
<font color="#808000" size="2">#conditions</font></p><font color="#808000" size="2"></font><font size="2"></font><p align="left"><font size="2">Person( ageInYears >= 18 )</font><font size="2"> </font><b><font color="#960000" size="2">and</font></b><font color="#960000" size="2"></font><font size="2"></font></p>
<font size="2"></font><p align="left"><b><font color="#960000" size="2">eval</font></b><font color="#960000" size="2"></font><font size="2"> ( hasOneOf(Person(tagList), TagCodes(engrTags)) )</font></p><font size="2"></font><p align="left">
<b><font color="#960000" size="2">then</font></b><font color="#960000" size="2"></font><font size="2"></font></p><font size="2"></font><p align="left"><font color="#808000" size="2">#actions</font></p><font color="#808000" size="2"></font><font size="2"></font><p align="left">
<font size="2">personActions.addAction(</font><font color="#008000" size="2">"EngineeringGroup"</font><font size="2">);</font></p><font size="2"><p align="left"></p></font><b><font color="#960000" size="2"><p>end</p>
</font></b></span></div>