Hi,

It never rains it pours!

Given a very simple rule:-

package drools.debug

rule "Test1"
when
        $m : Machine ( )
then
        System.out.println("--> DEBUG!");
end

Throws a very unfriendly error:-

Exception in thread "main" java.lang.VerifyError: (class: drools/debug/MachineShadowProxy, method: setProperty signature: (Ljava/lang/String;JLjava/lang/String;)V) Register 3 contains wrong type

        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
        at java.lang.Class.getConstructor0(Unknown Source)
        at java.lang.Class.getConstructor(Unknown Source)
        at org.drools.base.ClassObjectType.getShadow(ClassObjectType.java:123)
        at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:148)
        at org.drools.reteoo.Rete.assertObject(Rete.java:121)
        at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:196)
        at org.drools.reteoo.ReteooWorkingMemory.doAssertObject(ReteooWorkingMemory.java:68)
        at org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemory.java:724)
        at org.drools.common.AbstractWorkingMemory.assertObject(AbstractWorkingMemory.java:543)
        at drools.debug.Setup.main(Setup.java:42)

The Machine Class does extend another that has assessors for a Class that has lots and lots of constructors…

Complete, self contained JAR, file available on request (a new JIRA?)

Thanks,

Mike