<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 10/02/2012 19:41, Alexander Filipchik wrote:
    <blockquote
cite="mid:CAMO7bStt=+9tctKwbbokOx_v2EDYvdZ3_fQb1g+Yc3C9LokruA@mail.gmail.com"
      type="cite">Hello!</blockquote>
    Can you submit a pull request over at github? Don't forget to update
    the docs too, so they remain up to date.<br>
    <br>
    Mark
    <blockquote
cite="mid:CAMO7bStt=+9tctKwbbokOx_v2EDYvdZ3_fQb1g+Yc3C9LokruA@mail.gmail.com"
      type="cite">
      <div><br>
      </div>
      <div>I finally managed to get it working, but it required some
        changes in the existent stuff...</div>
      <div>Here is a diff:</div>
      <div><br>
      </div>
      <div>git://<a moz-do-not-send="true"
          href="http://github.com/droolsjbpm/drools.git">github.com/droolsjbpm/drools.git</a></div>
      <div>
        <div>diff --git a/drools-compiler/pom.xml
          b/drools-compiler/pom.xml</div>
        <div>index 708a5b2..4b1dc98 100644</div>
        <div>--- a/drools-compiler/pom.xml</div>
        <div>+++ b/drools-compiler/pom.xml</div>
        <div>@@ -244,7 +244,7 @@</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;_removeheaders&gt;Ignore-Package&lt;/_removeheaders&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;&lt;Bundle-SymbolicName&gt;org.drools.compiler;singleton:=true&lt;/Bundle-SymbolicName&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;&lt;Require-Bundle&gt;org.drools.core;visibility:=reexport;bundle-version="${drools.osgi.version}"&lt;/Require-Bundle&gt;</div>
        <div>- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Import-Package&gt;!org.drools.*,</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;Import-Package&gt;org.antlr.*;version="3.4",!org.drools.*,</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;!-- java compilers are optional: only
          need one at most --&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;org.codehaus.janino.*;resolution:=optional,org.eclipse.jdt.*;resolution:=optional,</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;*&lt;/Import-Package&gt;</div>
      </div>
      <div><br>
      </div>
      <div>git://<a moz-do-not-send="true"
          href="http://github.com/droolsjbpm/droolsjbpm-integration.git">github.com/droolsjbpm/droolsjbpm-integration.git</a></div>
      <div>
        <div>diff --git a/drools-camel/pom.xml b/drools-camel/pom.xml</div>
        <div>index a5a6b3d..273bfaa 100644</div>
        <div>--- a/drools-camel/pom.xml</div>
        <div>+++ b/drools-camel/pom.xml</div>
        <div>@@ -23,7 +23,7 @@</div>
        <div>&nbsp; &nbsp; &nbsp;&lt;dependency&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;groupId&gt;org.drools&lt;/groupId&gt;</div>
        <div>&nbsp; &nbsp; &nbsp;
          &nbsp;&lt;artifactId&gt;knowledge-internal-api&lt;/artifactId&gt;</div>
        <div>- &nbsp; &nbsp;&lt;/dependency&gt; &nbsp; &nbsp; &nbsp;</div>
        <div>+ &nbsp; &nbsp;&lt;/dependency&gt;</div>
        <div>&nbsp; &nbsp; &nbsp;&lt;dependency&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;groupId&gt;org.drools&lt;/groupId&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;artifactId&gt;drools-core&lt;/artifactId&gt;</div>
        <div>@@ -186,5 +186,44 @@</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;scope&gt;provided&lt;/scope&gt;</div>
        <div>&nbsp; &nbsp; &nbsp;&lt;/dependency&gt;</div>
        <div>&nbsp; &nbsp;&lt;/dependencies&gt;</div>
        <div>-</div>
        <div>+ &nbsp;&lt;build&gt;</div>
        <div>+ &nbsp; &nbsp;&lt;plugins&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;artifactId&gt;maven-jar-plugin&lt;/artifactId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;configuration&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;archive&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;manifestFile&gt;META-INF/MANIFEST.MF&lt;/manifestFile&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/archive&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/configuration&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;/plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;groupId&gt;org.apache.felix&lt;/groupId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;extensions&gt;true&lt;/extensions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;executions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;execution&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;id&gt;manifest&lt;/id&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;phase&gt;process-classes&lt;/phase&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;goals&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;goal&gt;manifest&lt;/goal&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/goals&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/execution&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/executions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;configuration&gt;</div>
        <div>
          + &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;manifestLocation&gt;META-INF&lt;/manifestLocation&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;instructions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;&lt;Bundle-SymbolicName&gt;org.drools.camel;singleton:=true&lt;/Bundle-SymbolicName&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;_removeheaders&gt;Ignore-Package&lt;/_removeheaders&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Require-Bundle&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;org.drools.core;bundle-version="${drools.osgi.version}",</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;org.drools.spring;bundle-version="${drools.osgi.version}"</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/Require-Bundle&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Import-Package&gt;!org.drools.*,
          *&lt;/Import-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Export-Package&gt;!org.drools.grid,
          org.drools.camel.*,
          org.drools.camel.jax&lt;/Export-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;DynamicImport-Package&gt;org.drools.*&lt;/DynamicImport-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/instructions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/configuration&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;/plugin&gt;</div>
        <div>+ &nbsp; &nbsp;&lt;/plugins&gt;</div>
        <div>+ &nbsp;&lt;/build&gt;</div>
        <div>&nbsp;&lt;/project&gt;</div>
        <div>diff --git a/drools-container/drools-spring/pom.xml
          b/drools-container/drools-spring/pom.xml</div>
        <div>index b6be52c..f83a457 100644</div>
        <div>--- a/drools-container/drools-spring/pom.xml</div>
        <div>+++ b/drools-container/drools-spring/pom.xml</div>
        <div>@@ -126,7 +126,45 @@</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;groupId&gt;org.antlr&lt;/groupId&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;artifactId&gt;antlr-runtime&lt;/artifactId&gt;</div>
        <div>&nbsp; &nbsp; &nbsp; &nbsp;&lt;scope&gt;test&lt;/scope&gt;</div>
        <div>- &nbsp; &nbsp;&lt;/dependency&gt; &nbsp;&nbsp;</div>
        <div>+ &nbsp; &nbsp;&lt;/dependency&gt;</div>
        <div>&nbsp; &nbsp;&lt;/dependencies&gt;</div>
        <div>-</div>
        <div>+ &nbsp;&lt;build&gt;</div>
        <div>+ &nbsp; &nbsp;&lt;plugins&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;artifactId&gt;maven-jar-plugin&lt;/artifactId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;configuration&gt;</div>
        <div>
          + &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;archive&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;manifestFile&gt;META-INF/MANIFEST.MF&lt;/manifestFile&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/archive&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/configuration&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;/plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;plugin&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;groupId&gt;org.apache.felix&lt;/groupId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;extensions&gt;true&lt;/extensions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;executions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;execution&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;id&gt;manifest&lt;/id&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;phase&gt;process-classes&lt;/phase&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;goals&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;goal&gt;manifest&lt;/goal&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/goals&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/execution&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/executions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;configuration&gt;</div>
        <div>
          + &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;manifestLocation&gt;META-INF&lt;/manifestLocation&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;instructions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;&lt;Bundle-SymbolicName&gt;org.drools.spring;singleton:=true&lt;/Bundle-SymbolicName&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;_removeheaders&gt;Ignore-Package&lt;/_removeheaders&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;&lt;Require-Bundle&gt;org.drools.core;bundle-version="${drools.osgi.version}"&lt;/Require-Bundle&gt;</div>
        <div>
          + &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Import-Package&gt;!org.drools.*,
          *&lt;/Import-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;Export-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;org.drools.grid,org.drools.grid.impl,org.drools.container.spring</div>
        <div>
          + &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/Export-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
          &nbsp;&lt;DynamicImport-Package&gt;org.drools.*&lt;/DynamicImport-Package&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;/instructions&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp; &nbsp;&lt;/configuration&gt;</div>
        <div>+ &nbsp; &nbsp; &nbsp;&lt;/plugin&gt;</div>
        <div>+ &nbsp; &nbsp;&lt;/plugins&gt;</div>
        <div>+ &nbsp;&lt;/build&gt;</div>
        <div>&nbsp;&lt;/project&gt;</div>
      </div>
      <div><br>
      </div>
      <div>Alex<br>
        <br>
        <div class="gmail_quote">On Tue, Feb 7, 2012 at 6:01 PM,
          Alexander Filipchik <span dir="ltr">&lt;<a
              moz-do-not-send="true" href="mailto:afilipchik@gmail.com">afilipchik@gmail.com</a>&gt;</span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">Thank you!
            But didn't help.
            <div>Actually I see some weird&nbsp;behavior. I decided to try
              referring drools-core using&nbsp;Require-Bundle from my bundle,
              so I added</div>
            <div>&lt;Bundle-SymbolicName&gt;org.drools.core&lt;/Bundle-SymbolicName&gt;
              to a drools-core package, recompiled it and got&nbsp;</div>
            <div>NullPointerException (still without stacktrace) when I
              tried to deploy new core bundle to a karaf container.</div>
            <div><br>
            </div>
            <div>I was able to deploy it after I
              removed&nbsp;Bundle-SymbolicName and recompiled again.</div>
            <div><br>
            </div>
            <div>Thanks,</div>
            <div>Alex<br>
              <br>
              <div class="gmail_quote">On Tue, Feb 7, 2012 at 4:42 PM,
                Mauricio Salatino <span dir="ltr">&lt;<a
                    moz-do-not-send="true"
                    href="mailto:salaboy@gmail.com" target="_blank">salaboy@gmail.com</a>&gt;</span>
                wrote:<br>
                <blockquote class="gmail_quote" style="margin:0 0 0
                  .8ex;border-left:1px #ccc solid;padding-left:1ex">I've
                  already answer a similar question here.. try including
                  inside the<br>
                  application that is using the bundles the file called:<br>
                  drools.packagebuilder.conf<br>
                  <br>
                  which contains:<br>
                  drools.dialect.default = java<br>
                  drools.dialect.java =<br>
org.drools.rule.builder.dialect.java.JavaDialectConfiguration<br>
                  drools.dialect.java.compiler = ECLIPSE<br>
                  <br>
                  drools.dialect.mvel =<br>
org.drools.rule.builder.dialect.mvel.MVELDialectConfiguration<br>
                  drools.dialect.mvel.strict = true<br>
                  drools.dialect.mvel.langLevel = 4<br>
                  <br>
                  drools.accumulate.function.average =<br>
                  org.drools.base.accumulators.AverageAccumulateFunction<br>
                  drools.accumulate.function.max =<br>
                  org.drools.base.accumulators.MaxAccumulateFunction<br>
                  drools.accumulate.function.min =<br>
                  org.drools.base.accumulators.MinAccumulateFunction<br>
                  drools.accumulate.function.count =<br>
                  org.drools.base.accumulators.CountAccumulateFunction<br>
                  drools.accumulate.function.sum =<br>
                  org.drools.base.accumulators.SumAccumulateFunction<br>
                  drools.accumulate.function.collectList =<br>
org.drools.base.accumulators.CollectListAccumulateFunction<br>
                  drools.accumulate.function.collectSet =<br>
org.drools.base.accumulators.CollectSetAccumulateFunction<br>
                  <br>
                  drools.evaluator.coincides =<br>
org.drools.base.evaluators.CoincidesEvaluatorDefinition<br>
                  drools.evaluator.before =
                  org.drools.base.evaluators.BeforeEvaluatorDefinition<br>
                  drools.evaluator.after =
                  org.drools.base.evaluators.AfterEvaluatorDefinition<br>
                  drools.evaluator.meets =
                  org.drools.base.evaluators.MeetsEvaluatorDefinition<br>
                  drools.evaluator.metby =
                  org.drools.base.evaluators.MetByEvaluatorDefinition<br>
                  drools.evaluator.overlaps =<br>
                  org.drools.base.evaluators.OverlapsEvaluatorDefinition<br>
                  drools.evaluator.overlappedby =<br>
org.drools.base.evaluators.OverlappedByEvaluatorDefinition<br>
                  drools.evaluator.during =
                  org.drools.base.evaluators.DuringEvaluatorDefinition<br>
                  drools.evaluator.includes =<br>
                  org.drools.base.evaluators.IncludesEvaluatorDefinition<br>
                  drools.evaluator.starts =
                  org.drools.base.evaluators.StartsEvaluatorDefinition<br>
                  drools.evaluator.startedby =<br>
org.drools.base.evaluators.StartedByEvaluatorDefinition<br>
                  drools.evaluator.finishes =<br>
                  org.drools.base.evaluators.FinishesEvaluatorDefinition<br>
                  drools.evaluator.finishedby =<br>
org.drools.base.evaluators.FinishedByEvaluatorDefinition<br>
                  drools.evaluator.equality =<br>
org.drools.base.evaluators.EqualityEvaluatorsDefinition<br>
                  drools.evaluator.comparable =<br>
org.drools.base.evaluators.ComparableEvaluatorsDefinition<br>
                  drools.evaluator.set =
                  org.drools.base.evaluators.SetEvaluatorsDefinition<br>
                  drools.evaluator.matches =<br>
                  org.drools.base.evaluators.MatchesEvaluatorsDefinition<br>
                  drools.evaluator.soundslike =<br>
org.drools.base.evaluators.SoundslikeEvaluatorsDefinition<br>
                  <br>
                  Cheers<br>
                  <br>
                  <br>
                  On Tue, Feb 7, 2012 at 9:03 PM, Alexander Filipchik<br>
                  &lt;<a moz-do-not-send="true"
                    href="mailto:afilipchik@gmail.com" target="_blank">afilipchik@gmail.com</a>&gt;
                  wrote:<br>
                  &gt; It's not an obvious how to OSGI-fy something :)<br>
                  &gt;<br>
                  &gt; I did some homework - now I have&nbsp;OSGi-ified
                  versions of drools-spring and<br>
                  &gt; drools-camel.<br>
                  &gt; Also I created own bundle and tried to import
                  KnowledgeBaseFactoryService,<br>
                  &gt; ServiceRegistry&nbsp;and KnowledgeBaseFactoryService
                  as described in<br>
                  &gt; <a moz-do-not-send="true"
                    href="http://docs.jboss.org/jbpm/v5.2/userguide/ch18.html#d0e4308"
                    target="_blank">http://docs.jboss.org/jbpm/v5.2/userguide/ch18.html#d0e4308</a>.<br>
                  &gt; All what I got - NullPointerException from karaf
                  core (haven't gotten full<br>
                  &gt; staketrace yet. For some reason it is just:<br>
                  &gt; 15:11:34,484 | INFO &nbsp;| l Console Thread | Console
                  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;|<br>
                  &gt; ? &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ? | 34 -
                  org.apache.karaf.shell.console<br>
                  &gt; - 2.2.2.fuse-02-13 | Exception caught while
                  executing command<br>
                  &gt; java.lang.NullPointerException<br>
                  &gt; )<br>
                  &gt;<br>
                  &gt; So, I spent some time randomly adding and
                  removing configuration params and<br>
                  &gt; I found - NPE occurs when I'm trying to import<br>
                  &gt; org.drools.KnowledgeBaseFactoryService.<br>
                  &gt; I guess (i'm not OSGI expert) it could be because
                  org.drools package is<br>
                  &gt; exported in 2! bundles. It is in drools-core and
                  knowledge-api bundles. And<br>
                  &gt; I guess, karaf container just can't link my
                  bundle with both core and api,<br>
                  &gt; only first bundle which contains requested
                  package (org.drools) wins.<br>
                  &gt;<br>
                  &gt; Any ideas on how to make it work?<br>
                  &gt; I actually have one - every bundle should export
                  own package. For<br>
                  &gt; knowledge-api it should be org.drools.api,
                  and&nbsp;org.drools.core for<br>
                  &gt; drools-core.<br>
                  &gt;<br>
                  &gt; Here is full log of similar packages:<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.command<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt; - org.drools.internalapi [217]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.runtime.process<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.time<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package<br>
                  &gt; org.apache.geronimo.transaction<br>
                  &gt; - org.apache.aries.transaction.manager [123]<br>
                  &gt; - org.apache.aries.transaction.manager [51]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package<br>
                  &gt; org.apache.geronimo.transaction.manager<br>
                  &gt; - org.apache.aries.transaction.manager [123]<br>
                  &gt; - org.apache.aries.transaction.manager [51]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.grid<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.spring [220]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  jline<br>
                  &gt; - org.apache.servicemix.bundles.jruby [210]<br>
                  &gt; - org.apache.karaf.shell.console [34]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package<br>
                  &gt; org.apache.geronimo.transaction.log<br>
                  &gt; - org.apache.aries.transaction.manager [123]<br>
                  &gt; - org.apache.aries.transaction.manager [51]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.management<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.agent<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; WARNING: multiple bundles are exporting package
                  org.drools.event<br>
                  &gt; - org.drools.core [218]<br>
                  &gt; - org.drools.api [216]<br>
                  &gt;<br>
                  &gt; 2012/2/3 Mark Proctor &lt;<a
                    moz-do-not-send="true"
                    href="mailto:mproctor@codehaus.org" target="_blank">mproctor@codehaus.org</a>&gt;<br>
                  &gt;&gt;<br>
                  &gt;&gt; neither spring or camel have been OSGi-ified.
                  only api, core, compiler,<br>
                  &gt;&gt; templates, decision-tables and flow have.<br>
                  &gt;&gt;<br>
                  &gt;&gt; If someone wants to OSGi-ify those and
                  contribute back they are very<br>
                  &gt;&gt; welcome:<br>
                  &gt;&gt; 1) update the pom.xml to use the osgi bundle
                  plugin, see other existing<br>
                  &gt;&gt; poms.<br>
                  &gt;&gt;<br>
                  &gt;&gt; <a moz-do-not-send="true"
href="https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/pom.xml"
                    target="_blank">https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/pom.xml</a><br>
                  &gt;&gt; 2) create an Activator to register the
                  module, again see Activator's for<br>
                  &gt;&gt; core, compiler etc.<br>
                  &gt;&gt;<br>
                  &gt;&gt; <a moz-do-not-send="true"
href="https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/src/main/java/org/drools/osgi/decisiontables/Activator.java"
                    target="_blank">https://github.com/droolsjbpm/drools/blob/master/drools-decisiontables/src/main/java/org/drools/osgi/decisiontables/Activator.java</a><br>
                  &gt;&gt; 3) update the osgi bundle's pom with new
                  dependencies, make sure to pull<br>
                  &gt;&gt; in the spring ones, unless the actual project
                  provides osgi ready jars.<br>
                  &gt;&gt;<br>
                  &gt;&gt; <a moz-do-not-send="true"
href="https://github.com/droolsjbpm/droolsjbpm-build-distribution/tree/master/drools-osgi-bundles"
                    target="_blank">https://github.com/droolsjbpm/droolsjbpm-build-distribution/tree/master/drools-osgi-bundles</a><br>
                  &gt;&gt; 4) Update the boot-bundles.properties so that
                  Spring DM loads the OSGi<br>
                  &gt;&gt; dependencies<br>
                  &gt;&gt;<br>
                  &gt;&gt; <a moz-do-not-send="true"
href="https://github.com/droolsjbpm/droolsjbpm-build-distribution/blob/master/drools-osgi-bundles/org.drools.osgi.test/src/test/filtered-resources/boot-bundles.properties"
                    target="_blank">https://github.com/droolsjbpm/droolsjbpm-build-distribution/blob/master/drools-osgi-bundles/org.drools.osgi.test/src/test/filtered-resources/boot-bundles.properties</a><br>
                  &gt;&gt; 5) write unit tests for spring and camel.<br>
                  &gt;&gt;<br>
                  &gt;&gt; Mark<br>
                  &gt;&gt; On 03/02/2012 03:47, Alexander Filipchik
                  wrote:<br>
                  &gt;&gt;<br>
                  &gt;&gt; Hello all!<br>
                  &gt;&gt;<br>
                  &gt;&gt; Don't know if it is right list to ask,
                  but&nbsp;I'm trying to make drools +<br>
                  &gt;&gt; camel running on Fuse (ServiceMix container).<br>
                  &gt;&gt; I couldn't even install OSGI drools artifacts
                  for 5.3.1 version (because<br>
                  &gt;&gt; of weird dependency on drools.core Snapshot),<br>
                  &gt;&gt; but did it with v5.2.1. I used:<br>
                  &gt;&gt;<br>
                  &gt;&gt; mvel2/2.1.0,<br>
                  &gt;&gt;
org.drools/drools-core/5.2.1.Final,&nbsp;org.drools/drools-compiler/5.2.1.Final,<br>
                  &gt;&gt; org.drools/knowledge-api/5.2.1.Final<br>
                  &gt;&gt; and&nbsp;org.drools/drools-camel/5.2.1.Final.<br>
                  &gt;&gt;<br>
                  &gt;&gt; All are installed and active. Part of log:<br>
                  &gt;&gt;<br>
                  &gt;&gt; [ 162] [Active &nbsp; &nbsp; ] [ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;] [ &nbsp; &nbsp; &nbsp; ]
                  [ &nbsp; 60] Drools :: Compiler<br>
                  &gt;&gt; (5.2.1.Final)<br>
                  &gt;&gt;<br>
                  &gt;&gt; [ 163] [Active &nbsp; &nbsp; ] [ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;] [ &nbsp; &nbsp; &nbsp; ]
                  [ &nbsp; 60] mvel2<br>
                  &gt;&gt; (2.1.0.drools4)<br>
                  &gt;&gt;<br>
                  &gt;&gt; [ 164] [Active &nbsp; &nbsp; ] [ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;] [ &nbsp; &nbsp; &nbsp; ]
                  [ &nbsp; 60] Drools :: Core<br>
                  &gt;&gt; (5.2.1.Final)<br>
                  &gt;&gt;<br>
                  &gt;&gt; [ 165] [Active &nbsp; &nbsp; ] [ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;] [ &nbsp; &nbsp; &nbsp; ]
                  [ &nbsp; 60] Knowledge API<br>
                  &gt;&gt; (5.2.1.Final)<br>
                  &gt;&gt;<br>
                  &gt;&gt; [ 172] [Active &nbsp; &nbsp; ] [ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;] [ &nbsp; &nbsp; &nbsp; ]
                  [ &nbsp; 60]<br>
                  &gt;&gt; mvn:org.drools/drools-camel/5.2.1.Final<br>
                  &gt;&gt;<br>
                  &gt;&gt; Then I tried to add my own camel-drools
                  router (I created OSGI bundle for<br>
                  &gt;&gt; it). It depends on:<br>
                  &gt;&gt;<br>
                  &gt;&gt; Import-Package:<br>
                  &gt;&gt;
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)"<br>
                  &gt;&gt;<br>
                  &gt;&gt; It tried to install it to a container but all
                  I got -<br>
                  &gt;&gt;<br>
                  &gt;&gt; Error executing command: Unresolved
                  constraint in bundle<br>
                  &gt;&gt; com.betfair.drools [170]: Unable to resolve
                  170.0: missing requirement<br>
                  &gt;&gt; [170.0] package;
                  (package=org.drools.camel.component)<br>
                  &gt;&gt;<br>
                  &gt;&gt; I even tried to put drools-camel.jar
                  with&nbsp;org.drools.camel.component in a<br>
                  &gt;&gt; lib folder and add package to
                  org.osgi.framework.system.packages.extra, but<br>
                  &gt;&gt; got same result.<br>
                  &gt;&gt;<br>
                  &gt;&gt; Do you have any idea, blog posts, samples
                  which could help me?<br>
                  &gt;&gt; I'm&nbsp;completely&nbsp;stuck.<br>
                  &gt;&gt;<br>
                  &gt;&gt; Thanks,<br>
                  &gt;&gt; Alex<br>
                  &gt;&gt;<br>
                  &gt;&gt;<br>
                  &gt;&gt;
                  _______________________________________________<br>
                  &gt;&gt; rules-users mailing list<br>
                  &gt;&gt; <a moz-do-not-send="true"
                    href="mailto:rules-users@lists.jboss.org"
                    target="_blank">rules-users@lists.jboss.org</a><br>
                  &gt;&gt; <a moz-do-not-send="true"
                    href="https://lists.jboss.org/mailman/listinfo/rules-users"
                    target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
                  &gt;&gt;<br>
                  &gt;&gt;<br>
                  &gt;&gt;<br>
                  &gt;&gt;
                  _______________________________________________<br>
                  &gt;&gt; rules-users mailing list<br>
                  &gt;&gt; <a moz-do-not-send="true"
                    href="mailto:rules-users@lists.jboss.org"
                    target="_blank">rules-users@lists.jboss.org</a><br>
                  &gt;&gt; <a moz-do-not-send="true"
                    href="https://lists.jboss.org/mailman/listinfo/rules-users"
                    target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
                  &gt;&gt;<br>
                  &gt;<br>
                  &gt;<br>
                  &gt; _______________________________________________<br>
                  &gt; rules-dev mailing list<br>
                  &gt; <a moz-do-not-send="true"
                    href="mailto:rules-dev@lists.jboss.org"
                    target="_blank">rules-dev@lists.jboss.org</a><br>
                  &gt; <a moz-do-not-send="true"
                    href="https://lists.jboss.org/mailman/listinfo/rules-dev"
                    target="_blank">https://lists.jboss.org/mailman/listinfo/rules-dev</a><br>
                  &gt;<br>
                  <span><font color="#888888"><br>
                      <br>
                      <span class="HOEnZb"><font color="#888888">
                          <br>
                          --<br>
                          &nbsp;- CTO @ <a moz-do-not-send="true"
                            href="http://www.plugtree.com"
                            target="_blank">http://www.plugtree.com</a><br>
                          &nbsp;- MyJourney @ <a moz-do-not-send="true"
                            href="http://salaboy.wordpress.com"
                            target="_blank">http://salaboy.wordpress.com</a><br>
                          &nbsp;- Co-Founder @ <a moz-do-not-send="true"
                            href="http://www.jugargentina.org"
                            target="_blank">http://www.jugargentina.org</a><br>
                          &nbsp;- Co-Founder @ <a moz-do-not-send="true"
                            href="http://www.jbug.com.ar"
                            target="_blank">http://www.jbug.com.ar</a><br>
                          <br>
                          &nbsp;- Salatino "Salaboy" Mauricio -<br>
                          <br>
_______________________________________________<br>
                          rules-users mailing list<br>
                          <a moz-do-not-send="true"
                            href="mailto:rules-users@lists.jboss.org"
                            target="_blank">rules-users@lists.jboss.org</a><br>
                          <a moz-do-not-send="true"
                            href="https://lists.jboss.org/mailman/listinfo/rules-users"
                            target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
                        </font></span></font></span></blockquote>
              </div>
              <br>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>