[rules-users] Fun with JAXB

Ronald R. DiFrango ron.difrango at gmail.com
Thu Jul 5 09:38:09 EDT 2007


All,

I am using JAXB classes as my model objects that are getting passed into the
rules engine.  I get the exception below.  Here is how I am loading the
rules and adding the objects into working memory:

        try
        {
            builder = new PackageBuilder();
            builder.addPackageFromDrl( new InputStreamReader(
RtvDecisionEngine.class.getResourceAsStream("rtv.drl" ) ) );
            builder.addPackageFromDrl( new InputStreamReader(
            RtvDecisionEngine.class.getResourceAsStream("
modelDiscrepancyRules.drl" ) ) );
            ruleBase = RuleBaseFactory.newRuleBase();
            ruleBase.addPackage( builder.getPackage() );
        }
        catch(Exception e)
        {
            throw new RuntimeException("Failure loading the Rules", e);
        }

        final StatefulSession session = ruleBase.newStatefulSession();
        DetailLine line = rtvLines[i];
        session.insert(line);

Ron

--------------------------------------------------- Exception
---------------------------------------------------

Exception in thread "main" java.lang.VerifyError: class
com.circuitcity.rtvcrms.impl.DetailLineDocumentImpl$DetailLineImplShadowProxyoverrides
final method .
    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)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070705/eb1d0180/attachment.html 


More information about the rules-users mailing list