Bug 1276379

Summary: kie-camel does not load rules when installed in JBoss EAP Module
Product: [Retired] JBoss BRMS Platform 6 Reporter: Anton Giertli <agiertli>
Component: Fuse IntegrationAssignee: Mario Fusco <mfusco>
Status: CLOSED EOL QA Contact: Jiri Petrlik <jpetrlik>
Severity: medium Docs Contact: Dawn Eisner <deisner>
Priority: unspecified    
Version: 6.1.0CC: romartin
Target Milestone: CR1Flags: romartin: needinfo-
Target Release: 6.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1278012 (view as bug list) Environment:
Last Closed: 2020-03-27 19:38:34 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1278012    
Attachments:
Description Flags
[0] Samel camel app - *.war none

Description Anton Giertli 2015-10-29 14:52:46 UTC
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 14:54:07 UTC
Created attachment 1087582 [details]
[0] Samel camel app - *.war

Comment 6 Mario Fusco 2015-11-04 08:52:02 UTC
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?