[rules-users] Drools Compile Error
Mark Proctor
mproctor at codehaus.org
Wed Feb 27 10:54:31 EST 2008
Narendra Valada wrote:
>
> Hi,
>
> It appears that nested inner classes are not implemented correctly. I
> am getting a compile error even when the rule is rewritten to include
> the import statement :
>
>
> package com.sample
>
> import com.sample.OuterClass.InnerClass.InnerInnerClass;
>
Yes, most likely we don't have the logic to reflect on inner inner
classes. See this class to understand how we resolve a string name to a
Class instance:
http://anonsvn.labs.jboss.com/labs/jbossrules/branches/4.0.x/drools-core/src/main/java/org/drools/base/ClassObjectType.java
Maybe you can make a test case and a patch for us for the 4.0.x branch.
I guess make it generic enough so that it can work with any numbers of
nesting. Although I may be concerned on how this might impact reflection
lookup.
>
>
> rule "Inner Class Test"
>
> when
>
> InnerInnerClass( )
>
> then
>
> System.out.println( "" );
>
>
> end
>
> Narendra
>
>
>
> On 2/22/08, *Narendra Valada* <narendra.valada at gmail.com
> <mailto:narendra.valada at gmail.com>> wrote:
>
> Importing the class was the first thing I tried. That did not work
> either.
>
> Thanks,
>
> Narendra
>
>
> On Fri, Feb 22, 2008 at 5:36 PM, Mark Proctor
> <mproctor at codehaus.org <mailto:mproctor at codehaus.org>> wrote:
>
> you need to import the inner classes, look at the HelloWorld
> example which uses a nested Message object and see how it's
> imported. Inner classes definitely work, let me know if
> inner.inner classes don't.
>
> Mark
> Narendra Valada wrote:
>> Hi,
>>
>> I have a rule that looks like this :
>>
>>
>> package com.sample
>>
>>
>> rule "Inner Class Test"
>>
>> when
>>
>> com.sample.OuterClass.InnerClass.InnerInnerClass( )
>>
>> then
>>
>> System.out.println( "" );
>>
>>
>> end
>>
>> The inner class referenced by this rule is defined like this:
>>
>> package com.sample;
>>
>> public class OuterClass {
>>
>> public class InnerClass {
>>
>> public class InnerInnerClass { }
>>
>> }
>>
>> }
>>
>> I am getting an error "Unable to resolve ObjectType
>> 'com.sample.OuterClass.InnerClass.InnerInnerClass'".
>>
>> What am I doing wrong? I am using XMLBeans-generated POJOs in
>> my application and these POJOS contain a lot of deeply nested
>> inner classes and these are giving me compile-errors in Drools.
>>
>> Thanks,
>>
>> Narendra
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
>
>
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org <mailto:rules-users at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20080227/15f95f3f/attachment.html
More information about the rules-users
mailing list