Hi,<div><br></div><div>I have just upgraded to Drools 5.2.0.Final and am getting a weird error when running unit tests.</div><div><br></div><div><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<title></title>
<meta name="Generator" content="Cocoa HTML Writer">
<meta name="CocoaVersion" content="1038.35">
<style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #1d0093}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Monaco; color: #f5201b}
span.s1 {text-decoration: underline}
span.s2 {text-decoration: underline ; color: #1d0093}
span.Apple-tab-span {white-space:pre}
</style>


<p class="p1"><span class="s1">java.lang.NullPointerException</span></p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.parseDefinitions(<span class="s2">ClassLoaderWeavingAdaptor.java:251</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.DefaultWeavingContext.getDefinitions(<span class="s2">DefaultWeavingContext.java:130</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.initialize(<span class="s2">ClassLoaderWeavingAdaptor.java:161</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.initialize(<span class="s2">Aj.java:271</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.Aj$ExplicitlyInitializedClassLoaderWeavingAdaptor.getWeavingAdaptor(<span class="s2">Aj.java:276</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.Aj$WeaverContainer.getWeaver(<span class="s2">Aj.java:254</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.Aj.preProcess(<span class="s2">Aj.java:90</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.aspectj.weaver.loadtime.ClassPreProcessorAgentAdapter.transform(<span class="s2">ClassPreProcessorAgentAdapter.java:54</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at sun.instrument.TransformerManager.transform(<span class="s2">TransformerManager.java:169</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at sun.instrument.InstrumentationImpl.transform(<span class="s2">InstrumentationImpl.java:365</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at java.lang.ClassLoader.defineClass1(<span class="s2">Native Method</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at java.lang.ClassLoader.defineClassCond(<span class="s2">ClassLoader.java:632</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at java.lang.ClassLoader.defineClass(<span class="s2">ClassLoader.java:616</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(<span class="s2">JavaDialectRuntimeData.java:570</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.util.CompositeClassLoader$CachingLoader.load(<span class="s2">CompositeClassLoader.java:258</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.util.CompositeClassLoader$CachingLoader.load(<span class="s2">CompositeClassLoader.java:241</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.util.CompositeClassLoader.loadClass(<span class="s2">CompositeClassLoader.java:88</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at java.lang.ClassLoader.loadClass(<span class="s2">ClassLoader.java:248</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.rule.JavaDialectRuntimeData.wire(<span class="s2">JavaDialectRuntimeData.java:405</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.rule.JavaDialectRuntimeData.wire(<span class="s2">JavaDialectRuntimeData.java:396</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.rule.JavaDialectRuntimeData.onBeforeExecute(<span class="s2">JavaDialectRuntimeData.java:237</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.rule.DialectRuntimeRegistry.onBeforeExecute(<span class="s2">DialectRuntimeRegistry.java:132</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.compiler.PackageBuilder.reloadAll(<span class="s2">PackageBuilder.java:796</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.compiler.PackageBuilder.addPackage(<span class="s2">PackageBuilder.java:751</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.compiler.PackageBuilder.addPackageFromDrl(<span class="s2">PackageBuilder.java:360</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.compiler.PackageBuilder.addKnowledgeResource(<span class="s2">PackageBuilder.java:538</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at org.drools.builder.impl.KnowledgeBuilderImpl.add(<span class="s2">KnowledgeBuilderImpl.java:28</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at au.com.promedicus.rules.KnowledgeBaseBuilder.addPackagesFromList(<span class="s2">KnowledgeBaseBuilder.java:108</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at au.com.promedicus.rules.KnowledgeBaseBuilder.build(<span class="s2">KnowledgeBaseBuilder.java:69</span>)</p>
<p class="p2"><span class="Apple-tab-span">        </span>at au.com.promedicus.rules.KnowledgeBaseBuilder.build(<span class="s2">KnowledgeBaseBuilder.java:54</span>)</p><p class="p2"><br></p><div>I have traced the problem to <span class="Apple-style-span" style="color: rgb(29, 0, 147); font-family: Monaco; font-size: 11px; ">org.drools.rule.</span><span class="Apple-style-span" style="color: rgb(29, 0, 147); font-family: Monaco; font-size: 11px; ">JavaDialectRuntimeData$PackageClassLoader.getResources</span>. This returns null whereas AspectJ expects it to at least return an empty enumeration - hence the NPE. Interestingly the problem does not occur when running our server, however we can&#39;t upgrade unless our unit tests pass and we can&#39;t easily turn off aspectj for these.</div>
<meta charset="utf-8"><div> </div>regards
</div><div>Steve</div>