Description of problem: When trying to build decision table that contains comment character (# or //) at start of the cell with condition. e.g. the resulting condition is "Person (#age == 18)", the cell contains "#age (or //age)". This is not permitted, but the compiler should not throw NPE and instead generate some meaningful error message. Version-Release number of selected component (if applicable): 6.0.0-SNAPSHOT (2013-05-28) How reproducible: Always Steps to Reproduce: 1. Run the attached Maven reproducer (mvn test) Actual results: NPE throwed by compiler. Expected results: Meaningful error generated by compiler. Additional info:
Created attachment 753930 [details] Maven based reproducer
Forgot to add stacktrace, here it is: java.lang.NullPointerException at org.drools.compiler.kie.builder.impl.MessageImpl.<init>(MessageImpl.java:49) at org.drools.compiler.kie.builder.impl.ResultsImpl.addMessage(ResultsImpl.java:39) at org.drools.compiler.kie.builder.impl.AbstractKieModule.buildKnowledgePackages(AbstractKieModule.java:144) at org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:39) at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieModule(KieBuilderImpl.java:207) at org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:160) at org.kie.internal.utils.KieHelper.build(KieHelper.java:25)
Fixed with commit https://github.com/droolsjbpm/drools/commit/2e04464a22c69c4f94efd6b308a49f857ad0a5e9
Verified fixed in ER2. Error message is generated instead of NPE: