OK, found the problem!
In my package I was having a model "testModel" that had no
facts declared.
This was causing the NPE when building the
package.
So I think we need to check for this case or not allow the
user to do this.
--zoly
Yes, I did a standalone test and in
passes.
In my test I used the text version of the package from
guvnor, that I believe is generated by
ContentPackageAssembler.getDRL().
however PackageBuilder has no issues with that
version.
Now my next place to investigate is guvnors
ContentPackageAssembly...
and the NPE happens as I can see from the stack trace in:
ContentPackageAssembly.loadDeclaredTypes.
If you
have any sugestions to better approach solving this problem let me know. As it
is right now I will look into the code and try to understand what is going
on.
regards
--zoly
Zoltan Farkas wrote:
Hi Mark, I need to have the unit test inside guvnor
or another project that depends on it.
The code fails in guvnor when I do build
package.
and I believe the problem might be related to
BRMSPackageBuilder that inherits from PackageBuilder or
ContentPackageAssembler
where should I create the unit test
?
Have you tried doing this as a standalone unit
test first? As the problem will be in the PackageBuilder, not in the Guvnor.
Just following one of the examples in MiscTest.
Mark
--zoly
Zoltan Farkas wrote:
the actual package namespace contains dots, I
removed them for privacy purposes.
ok, can i
ask you to make a unit test for me, that I can put into MiscTest ?
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/integrationtests/MiscTest.java
Thanks
Mark
--zoly
Zoltan Farkas wrote:
I am getting a NPE when building a package with
guvnor:
I think it might be a bug when a
package namespace doesn't have a dot in it.
Mark
java.lang.NullPointerException
at
org.drools.compiler.PackageBuilder.validateUniqueRuleNames(PackageBuilder.java:826)
at
org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:548)
at
org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:287)
at
org.drools.guvnor.server.builder.ContentPackageAssembler.loadDeclaredTypes(ContentPackageAssembler.java:249)
at
org.drools.guvnor.server.builder.ContentPackageAssembler.preparePackage(ContentPackageAssembler.java:216)
at
org.drools.guvnor.server.builder.ContentPackageAssembler.<init>(ContentPackageAssembler.java:103)
at
org.drools.guvnor.server.builder.ContentPackageAssembler.<init>(ContentPackageAssembler.java:117)
at
org.drools.guvnor.server.ServiceImplementation.buildPackage(ServiceImplementation.java:1366)
at
org.drools.guvnor.server.ServiceImplementation.buildPackage(ServiceImplementation.java:1350)
here is my package source:
package MyTest
import pack.EventVO
import pack.ExtendedEventVO
declare
ExtendedEventVO
@role( event )
end
rule
"Test"
dialect
"mvel"
when
ExtendedEventVO(
)
then
System.out.println("Hello World, events
happen!!!")
end
rule
'TestEntryPoint'
dialect
'mvel'
when
ExtendedEventVO() from entry-point
eventDoor
then
System.out.println("Hello World,
events happen!!!")
end
This seems like a possible BUG.
Let me know, thanks
--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
_______________________________________________
rules-dev mailing list
rules-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev