I'm not an OSGI expert, but I was fighting to deploy drools-core, api,
compiler and grid into apache felix and based on some expert
recommendations I end up a merged bundle that contains all the stuff
that I need for multiple applications. I know that this is not the
best option but it worked well. Are there some major reasons why
drools can't provide a merged bundle with all the common required
jars?
My two cents...
2012/2/3 Mark Proctor <mproctor(a)codehaus.org>:
neither spring or camel have been OSGi-ified. only api, core,
compiler,
templates, decision-tables and flow have.
If someone wants to OSGi-ify those and contribute back they are very
welcome:
1) update the pom.xml to use the osgi bundle plugin, see other existing
poms.
https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/po...
2) create an Activator to register the module, again see Activator's for
core, compiler etc.
https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/sr...
3) update the osgi bundle's pom with new dependencies, make sure to pull in
the spring ones, unless the actual project provides osgi ready jars.
https://github.com/droolsjbpm/droolsjbpm-build-distribution/tree/master/d...
4) Update the boot-bundles.properties so that Spring DM loads the OSGi
dependencies
https://github.com/droolsjbpm/droolsjbpm-build-distribution/blob/master/d...
5) write unit tests for spring and camel.
Mark
On 03/02/2012 03:47, Alexander Filipchik wrote:
Hello all!
Don't know if it is right list to ask, but I'm trying to make drools + camel
running on Fuse (ServiceMix container).
I couldn't even install OSGI drools artifacts for 5.3.1 version (because of
weird dependency on drools.core Snapshot),
but did it with v5.2.1. I used:
mvel2/2.1.0,
org.drools/drools-core/5.2.1.Final, org.drools/drools-compiler/5.2.1.Final,
org.drools/knowledge-api/5.2.1.Final
and org.drools/drools-camel/5.2.1.Final.
All are installed and active. Part of log:
[ 162] [Active ] [ ] [ ] [ 60] Drools :: Compiler
(5.2.1.Final)
[ 163] [Active ] [ ] [ ] [ 60] mvel2 (2.1.0.drools4)
[ 164] [Active ] [ ] [ ] [ 60] Drools :: Core
(5.2.1.Final)
[ 165] [Active ] [ ] [ ] [ 60] Knowledge API
(5.2.1.Final)
[ 172] [Active ] [ ] [ ] [ 60]
mvn:org.drools/drools-camel/5.2.1.Final
Then I tried to add my own camel-drools router (I created OSGI bundle for
it). It depends on:
Import-Package:
org.apache.activemq,org.apache.activemq.camel.component,org.apache.activemq.pool,org.apache.camel;version="[2.8,3)",org.apache.camel.builder;version="[2.8,3)",org.apache.camel.component.jms;version="[2.8,3)",org.apache.camel.model;version="[2.8,3)",org.drools.camel.component,org.osgi.service.blueprint;version="[1.0.0,2.0.0)",org.springframework.transaction;version="[3,4)"
It tried to install it to a container but all I got -
Error executing command: Unresolved constraint in bundle com.betfair.drools
[170]: Unable to resolve 170.0: missing requirement [170.0] package;
(package=org.drools.camel.component)
I even tried to put drools-camel.jar with org.drools.camel.component in a
lib folder and add package to org.osgi.framework.system.packages.extra, but
got same result.
Do you have any idea, blog posts, samples which could help me?
I'm completely stuck.
Thanks,
Alex
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users