Hi,

I have created a camel drools project using kie-aries-blueprint (code refactored but not yet committed). 

When ksession is created, I get this error message :

Caused by: org.osgi.service.blueprint.container.ComponentDefinitionException: No KSession found in kmodule.xml with id 'ksession1'.
at org.kie.aries.blueprint.factorybeans.KieObjectsFactoryBean.createKieSessionRef(KieObjectsFactoryBean.java:70)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_51]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_51]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_51]
at java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_51]
at org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:297)[7:org.apache.aries.blueprint.core:1.0.1]
at org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:958)[7:org.apache.aries.blueprint.core:1.0.1]
at org.apache.aries.blueprint.container.BeanRecipe.getInstance(BeanRecipe.java:313)[7:org.apache.aries.blueprint.core:1.0.1]

The kmodule.xml file created under META-INF directory contains a ksession1

<?xml version="1.0" encoding="UTF-8"?>
<kmodule
    xmlns="http://jboss.org/kie/6.0.0/kmodule">
  <kbase name="drl_sample">
    <ksession name="ksession1" type="stateless"/>
  </kbase>
</kmodule>

Here is what has been created under camel blueprint file 

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:kie="http://drools.org/schema/kie-aries-blueprint/1.0.0"
           xsi:schemaLocation="
           http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0
           http://drools.org/schema/kie-aries-blueprint/1.0.0 http://drools.org/schema/kie-aries-blueprint/1.0.0">

  <!-- Beans used by camel in the example -->
  <bean id="droolsHelper" class="org.drools.camel.example.DroolsCommandHelper"/>
  <bean id="personHelper" class="org.drools.camel.example.PersonHelper"/>

  <bean id="aList" class="java.util.ArrayList"/>

  <kie:ksession-ref id="ksession1">
    <kie:batch>
      <kie:set-global identifier="list" ref="aList"/>
    </kie:batch>
  </kie:ksession-ref>

Any idea is welcome ?

Regards,

--
Charles Moulliard
Apache Committer / Architect @RedHat
Twitter : @cmoulliard | Blog : http://cmoulliard.blogspot.com