All this sounds eerily similar to the problem I am reporting. In the 4.0 version I am getting the following exception on those inner classes:
Exception in thread "main" java.lang.VerifyError: class com.circuitcity.rtvcrms.impl.DetailLineDocumentImpl$DetailLineImplShadowProxy
overrides final method ãÝ*h'+.ûÝ*h'+
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.lang.ClassLoader.defineClass
(ClassLoader.java:465)
at org.drools.rule.MapBackedClassLoader.fastFindClass(MapBackedClassLoader.java:40)
at org.drools.rule.MapBackedClassLoader.loadClass(MapBackedClassLoader.java:59)
at java.lang.ClassLoader.loadClass
(ClassLoader.java:251)
at org.drools.reteoo.Rete$ObjectTypeConf.<init>(Rete.java:352)
at org.drools.reteoo.Rete.assertObject(Rete.java:152)
at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java
:190)
at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:70)
at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:772)
at org.drools.common.AbstractWorkingMemory.insert
(AbstractWorkingMemory.java:584)
at com.circuitcity.rtvcrms.rules.RtvDecisionEngine.processDetailLines(RtvDecisionEngine.java:95)
at com.circuitcity.rtvcrms.rules.RtvDecisionEngine.executeRules(RtvDecisionEngine.java
:64)
at com.circuitcity.rtvcrms.test.MainBasedTester.main(MainBasedTester.java:34)
The catch is that XML Beans objects are auto generated based upon and XSD and we have limited control over what gets generated.
Thank you for your quick response.I cannot make the Outer class static and public since it is not an inner class.In my example, I have two inner classes : Inner and InnerInner.Class Inner is enclosed by Outer and class InnerInner is enclosed by Inner. I get the "Unable to resolve object type" error only on the "InnerInner" class and not on the "Inner" class.Both the inner classes are defined as non-static.Thanks,Narendra
On 7/5/07, Mark Proctor <mproctor@codehaus.org > wrote:you need to make your Outer class static and public. Look at the sample generated with a new drools project, that uses a static public class.
Mark
Narendra Valada wrote:Hello,I am getting an "Unable to resolve object type" error on certain XML Bean generated inner classes. I get this error only on inner classes that have been defined within other inner classes. Please see example below.Is this a known limitation of JBoss Rules (I am using JBOSS Rules 3.0.6) or the JANINO compiler?Thanks.com.sample;package
public
class Outer{ public class Inner { public boolean inner =false; public class InnerInner {}
}
}
packagecom.sampleimport
com.sample.Outer1.Inner.InnerInner;rule
"Hello World 1" whenInnerInner()
thenSystem.out.println(
"");end
_______________________________________________
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
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users