<br>&nbsp;&nbsp;&nbsp; Eric, <br><br>&nbsp;&nbsp;&nbsp; Thanks, I understand now.<br><br>&nbsp;&nbsp;&nbsp;&nbsp; What happens is that if both DRL files declare the same package name, all their contents will be merged. It means that you would end up with both imports in the same namespace:
<br><br>
import com.company.DataClass.AlternativeKey;<br>
import com.company.AnotherClass.AlternativeKey;<br><br>&nbsp;&nbsp;&nbsp;&nbsp; And so the engine will raise an error saying that it does not know which one you are refering to when you write simply:<br><br>AlternativeKey<br><br>&nbsp;&nbsp;&nbsp; I think the engine behavior is correct, since the idea of loading two different files with the same name space into the same package builder is to merge them, or even replace (update) that eventually have the same name. 
<br><br>&nbsp;&nbsp;&nbsp; What do you think?<br><br>&nbsp;&nbsp;&nbsp; Edson<br><br><br><div><span class="gmail_quote">2007/7/26, Eric Miles &lt;<a href="mailto:eric.miles@kronos.com">eric.miles@kronos.com</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">



  
  

<div>
Edson,<br>
<br>
I have since changed my schema but here was my issue:<br>
<br>
rule1.drl:<br>
import com.company.DataClass.AlternativeKey;<br>
import com.company.DataClass;<br>
<br>
rule &quot;Some rule&quot;<br>
&nbsp;&nbsp;&nbsp; when<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DataClass.AlternativeKey(someParm == true)<br>
&nbsp;&nbsp;&nbsp; then<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ...<br>
end<br>
<br>
Different drlf file:<br>
rule2.drl<br>
import com.company.AnotherClass.AlternativeKey;<br>
import com.company.AnotherClass;<br>
<br>
rule &quot;Another rule&quot;<br>
&nbsp;&nbsp;&nbsp; when<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AnotherClass.AlternativeKey(diffParm == 1)<br>
&nbsp;&nbsp;&nbsp; then<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ...<br>
end<br>
<br>
<br>
This was the gist of what I was doing.&nbsp; The outer classes&#39; names were different, it was the INNER class of each of these classes that had the same name.&nbsp; I was actually getting compile errors on the import statements.&nbsp; Like I said, these rules worked fine if loaded separately, but once I tried to put them all int he same rule base, I was getting the import collision error.&nbsp; Later on this evening (when I&#39;m not at work), I&#39;ll try to put together a small test case and upload it.&nbsp; In the meantime, you can look skim over this and let me know if something jumps out at you.
<br>
<br>
Thanks,<br><span class="sg">
Eric</span><div><span class="e" id="q_11402c561bd99668_2"><br>
<br>
On Thu, 2007-07-26 at 10:32 -0300, Edson Tirelli wrote:<br>
<blockquote type="CITE">
    <font color="#000000">&nbsp;&nbsp;&nbsp; Eric,</font><br>
    <br>
    <font color="#000000">&nbsp;&nbsp;&nbsp; Not sure if I understood your problem, but if you have multiple classes with the same name, and the only difference is that they are inner classes of different classes, I guess what you need to do is to fully qualify your class names in your rules... 
</font><br>
    <br>
    <font color="#000000">rule xxx</font><br>
    <font color="#000000">when</font><br>
    <font color="#000000">&nbsp;&nbsp;&nbsp; my.package.MyClass.MyInnerClass( ... )</font><br>
    <font color="#000000">...</font><br>
    <font color="#000000">end</font><br>
    <br>
    <font color="#000000">&nbsp;&nbsp; If this is not your problem, can you please show us an example so we understand it better?</font><br>
    <br>
    <font color="#000000">&nbsp;&nbsp; Edson</font><br>
    <br>
    <br>
</blockquote>
<blockquote type="CITE">
    <font color="#000000">2007/7/25, Eric Miles &lt;<a href="mailto:eric.miles@kronos.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">eric.miles@kronos.com</a>&gt;:</font>
</blockquote>
<blockquote type="CITE">
    <blockquote>
        <font color="#000000">Due to how JAXB treats anonymous inner complex types, I ended up with a public static inner classes named AlternativeKey in several of my data classes&nbsp; I have several rules written to deal with each data class individually that all work ok.&nbsp; However, when I attempt to put them all in the same rule base (all belong to the same package), I get an import collision exception on the AlternativeKey inner class.&nbsp; Depending on where in the builder I add the resource depends on which AlternativeKey the compiler bitches about (validity).&nbsp; I&#39;m not familiar with the source at all, so I&#39;m unsure as to where to look for this.&nbsp; However, this sounds like a bug to me?&nbsp; There is an easy workaround for this as I I just don&#39;t use anonymous types and define them in my schema explicitly.&nbsp; Just thought I&#39;d identify this as a possible issue. 
</font><br>
        <br>
        <font color="#000000">Thanks,</font><br>
        <font color="#000000">Eric</font>
    </blockquote>
</blockquote>
<blockquote type="CITE">
    <blockquote>
        <br>
        <font color="#000000">_______________________________________________</font><br>
        <font color="#000000">rules-users mailing list</font><br>
        <font color="#000000"><a href="mailto:rules-users@lists.jboss.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">rules-users@lists.jboss.org</a></font><br>
        <font color="#000000"><a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</font><br>
        <br>
    </blockquote>
</blockquote>
<blockquote type="CITE">
    <br>
    <br>
    <br>
    <font color="#000000">-- </font><br>
    <font color="#000000">&nbsp;&nbsp;Edson Tirelli</font><br>
    <font color="#000000">&nbsp;&nbsp;Software Engineer - JBoss Rules Core Developer</font><br>
    <font color="#000000">&nbsp;&nbsp;Office: +55 11 3529-6000</font><br>
    <font color="#000000">&nbsp;&nbsp;Mobile: +55 11 9287-5646 </font><br>
    <font color="#000000">&nbsp;&nbsp;JBoss, a division of Red Hat @ <a href="http://www.jboss.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">www.jboss.com</a></font>
</blockquote>
</span></div></div>

</blockquote></div><br><br clear="all"><br>-- <br>&nbsp;&nbsp;Edson Tirelli<br>&nbsp;&nbsp;Software Engineer - JBoss Rules Core Developer<br>&nbsp;&nbsp;Office: +55 11 3529-6000<br>&nbsp;&nbsp;Mobile: +55 11 9287-5646<br>&nbsp;&nbsp;JBoss, a division of Red Hat @ <a href="http://www.jboss.com">
www.jboss.com</a>