[rules-dev] Regression 5.4.0 -> 5.5.0: NPE due to declare/extends

Wolfgang Laun wolfgang.laun at gmail.com
Sat Jul 27 01:04:47 EDT 2013


Perhaps this has already been detected and fixed. 5.5.0 is still the
last "Final", isn't it?

// === express/Message.java
package express;
public class Message {
    private String text;
    public Message( String m ){
        this.text = m;
    }
    public String getText(){return text; }
}

// === express/express.drl
package express;

declare CountedMessage extends Message
  count : int
end

// === Used with a straightforward build, this is sufficient to throw:
Exception in thread "main" java.lang.NullPointerException
	at org.drools.base.ClassTypeResolver.resolveType(ClassTypeResolver.java:130)
	at org.drools.compiler.PackageBuilder.isNovelClass(PackageBuilder.java:2291)
	at org.drools.compiler.PackageBuilder.generateDeclaredBean(PackageBuilder.java:2473)
	at org.drools.compiler.PackageBuilder.processTypeDeclarations(PackageBuilder.java:2133)
	at org.drools.compiler.PackageBuilder.mergePackage(PackageBuilder.java:1272)
	at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:869)
	at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:466)
	at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:694)
	at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:51)
	at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:40)
	at express.Main.setup(Main.java:58)
	at express.Main.main(Main.java:118)


More information about the rules-dev mailing list