[jboss-jira] [JBoss JIRA] (DROOLS-800) KieBase compilation fails when @PropertyReactive declared in different DRL

Duncan Doyle (JIRA) issues at jboss.org
Fri May 29 09:07:02 EDT 2015


     [ https://issues.jboss.org/browse/DROOLS-800?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Duncan Doyle updated DROOLS-800:
--------------------------------
    Description: 
I declare my events in a DRL that is different from the DRL that contains my rules. I declare my event with @propertyReactive. In my rule I use an @watch annotation. In JBoss BRMS 6.1 / Drools 6.2+, this causes an error when building my KieBase:

{code}
java.lang.RuntimeException: Error while creating KieBase[Message [id=1, level=ERROR, path=rules.drl, line=7, column=0
   text=Wrong usage of @Watch annotation on class org.jboss.ddoyle.drools.propreactive.model.Event1 that is not annotated as @PropertyReactive]]
	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:418)
	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:396)
{code}

The interesting thing is that the error only occurs if I give my DRL with my 'declare' a certain name. I.e. if I name it 'a.drl', building the KieBase fails, if I name it 'ab.drl', it succeeds.

A reproducer can be found here: https://github.com/DuncanDoyle/drools-propreactive-kiebase-build-issue

Just run a 'mvn clean test' on the project.

  was:
I declare my events in a DRL that is different from the DRL that contains my rules. I declare my event with @propertyReactive. In my rule I use an @watch annotation. In JBoss BRMS 6.1 / Drools 6.2+, this causes an error when building my KieBase:

java.lang.RuntimeException: Error while creating KieBase[Message [id=1, level=ERROR, path=rules.drl, line=7, column=0
   text=Wrong usage of @Watch annotation on class org.jboss.ddoyle.drools.propreactive.model.Event1 that is not annotated as @PropertyReactive]]
	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:418)
	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:396)

The interesting thing is that the error only occurs if I give my DRL with my 'declare' a certain name. I.e. if I name it 'a.drl', building the KieBase fails, if I name it 'ab.drl', it succeeds.

A reproducer can be found here: https://github.com/DuncanDoyle/drools-propreactive-kiebase-build-issue

Just run a 'mvn clean test' on the project.



> KieBase compilation fails when @PropertyReactive declared in different DRL
> --------------------------------------------------------------------------
>
>                 Key: DROOLS-800
>                 URL: https://issues.jboss.org/browse/DROOLS-800
>             Project: Drools
>          Issue Type: Bug
>          Components: core engine
>    Affects Versions: 6.2.0.Final
>         Environment: Mac OS X 10.10.3, Oracle Hotspot 1.7.0_79, Drools 6.3.0-SNAPSHOT, JBoss BRMS 6.1.0
>            Reporter: Duncan Doyle
>            Assignee: Mario Fusco
>
> I declare my events in a DRL that is different from the DRL that contains my rules. I declare my event with @propertyReactive. In my rule I use an @watch annotation. In JBoss BRMS 6.1 / Drools 6.2+, this causes an error when building my KieBase:
> {code}
> java.lang.RuntimeException: Error while creating KieBase[Message [id=1, level=ERROR, path=rules.drl, line=7, column=0
>    text=Wrong usage of @Watch annotation on class org.jboss.ddoyle.drools.propreactive.model.Event1 that is not annotated as @PropertyReactive]]
> 	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:418)
> 	at org.drools.compiler.kie.builder.impl.KieContainerImpl.getKieBase(KieContainerImpl.java:396)
> {code}
> The interesting thing is that the error only occurs if I give my DRL with my 'declare' a certain name. I.e. if I name it 'a.drl', building the KieBase fails, if I name it 'ab.drl', it succeeds.
> A reproducer can be found here: https://github.com/DuncanDoyle/drools-propreactive-kiebase-build-issue
> Just run a 'mvn clean test' on the project.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


More information about the jboss-jira mailing list