Here is a unit test you can
add to PackageBuilderTest:
public void testAddPackage() throws IOException {
KnowledgeBuilder kbuilder =
KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newInputStreamResource(this.getClass().getResourceAsStream("mortgages_TEST.pkg")),
ResourceType.PKG);
KnowledgeBase kbase =
KnowledgeBaseFactory.newKnowledgeBase();
kbase.addKnowledgePackages(kbuilder.getKnowledgePackages());
StatefulKnowledgeSession session =
kbase.newStatefulKnowledgeSession();
}
The unit test uses the
mortgages_TEST from guvnor, you need to add mortgages_TEST.pkg to
src/test/resources/org.drools.compiler.
I have attached the mortgages test pkg to this email.
perfect, if only more bug reporting was like this :)
regards
--zoly
Try changing the code to this, let me know if it fixes the problem and
I'll apply to trunk. any chance you could send us a mini self contained
unit test for this bug?
public synchronized void addPackage(final Package newPkg) {
PackageRegistry pkgRegistry = this.pkgRegistryMap.get(
newPkg.getName() );
Package pkg = null;
if ( pkgRegistry != null ) {
pkg = pkgRegistry.getPackage();
}
if ( pkg == null ) {
pkg = newPackage( new PackageDescr( newPkg.getName() )
).getPackage();
}
Zoltan Farkas wrote:
PackageBuilder.java
at line 688:
public synchronized void addPackage(final Package newPkg) {
Package pkg = this.pkgRegistryMap.get( newPkg.getName()
).getPackage();
if
pkgRegistryMap is empty as it should probably be initially adding a new
package will cause a NPE.
This
fuction assumes that there is always a package in the
packageRegistryMap.
I
am getting a NPE when I am trying something like:
KnowledgeBuilder kbuilder =
KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newUrlResource("a valid
url"),
ResourceType.PKG);
thanks
for any help
--zoly
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev