Bug 1276379 - kie-camel does not load rules when installed in JBoss EAP Module
kie-camel does not load rules when installed in JBoss EAP Module
Status: ON_QA
Product: JBoss BRMS Platform 6
Classification: JBoss
Component: Fuse Integration (Show other bugs)
6.1.0
Unspecified Unspecified
unspecified Severity medium
: CR1
: 6.2.0
Assigned To: Mario Fusco
Jiri Petrlik
Dawn Eisner
:
Depends On:
Blocks: 1278012
  Show dependency treegraph
 
Reported: 2015-10-29 10:52 EDT by Anton Giertli
Modified: 2016-10-14 10:12 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1278012 (view as bug list)
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
romartin: needinfo-


Attachments (Terms of Use)
[0] Samel camel app - *.war (3.85 KB, application/x-gzip)
2015-10-29 10:54 EDT, Anton Giertli
no flags Details

  None (edit)
Description Anton Giertli 2015-10-29 10:52:46 EDT
Description of problem:
when kie-camel and other necessary dependencies are installed in JBoss EAP Module, they are not loading the rules bundled in *.war app deployed on the same EAP instance.

Version-Release number of selected component (if applicable):
BPM Suite 6.1
JBoss EAP 6.4
lib version:
org.kie:kie-camel:6.2.0.Final-redhat-6

How reproducible:
always

Steps to Reproduce:
1) Unzip third-party-modules.zip to your favorite location (let's say /tmp/modules).
2) Unzip the sample-kie-service.tgz to another location and compile it using a simple 'mvn install'

I have added these two repositories to my settings.xml in order to successfully build this project:

A) http://repo.fusesource.com/nexus/content/groups/public/
B) https://maven.repository.redhat.com/techpreview/all/


3) copy the compiled sample-kie-service.war from the target folder to your eap6 deploy directory
4) start jboss using the standalone.sh script, and specifying the extra modules folder. I use the following command:

$ cd jboss-eap-6/bin
$ JBOSS_MODULEPATH=../modules:/tmp/modules ./standalone.sh

5) in server.log, you should see the timer ticking, but not the message from the rule1.drl file:

[route2] (Camel (camel) thread #0 - timer://mytimer) Rule Execution

6) You can also see the message "No files found for KieBase kbase1" in server.log.

Actual results:

Rule files bundled in a *.war are NOT loaded

Expected results:
Rule file bundled in a *.war are loaded

Additional info:
This is my *.war structure during the tests:
http://pastebin.test.redhat.com/323151

If I remove the provided scope of kie-camel in pom.xml and bundles everything within the *.war under web-inf/lib so my WAR structure looks like this:
http://pastebin.test.redhat.com/323153

Then the kie-camel loads the rule, and the camel routes executes the rule as expected.

At first I thought this may be related to
https://access.redhat.com/solutions/359653
but I'd like to request technical verification, whether this is not issue within our code..
Comment 2 Anton Giertli 2015-10-29 10:54 EDT
Created attachment 1087582 [details]
[0] Samel camel app - *.war
Comment 6 Mario Fusco 2015-11-04 03:52:02 EST
I fixed this issue with the following 2 commits:

- drools
https://github.com/droolsjbpm/drools/commit/1587b6e08f15eefd8c52121fe284f48252ee79b9

- droolsjbpm-integration
https://github.com/droolsjbpm/droolsjbpm-integration/commit/85c894f10920bd825637bf8ad8225a6ecd2c9b09

However also with this 2 fixes in place the provided test case was not working because the attached kie module missed antlr and ecj among their dependencies. I manually added these dependencies to the module and this definitively fixed the problem. 

Roger, since you are investigating the reason of the missing dependencies, can you please add your findings here?

Note You need to log in before you can comment on or make changes to this bug.