<div> </div>
<div>Hi ,</div>
<div> </div>
<div>We have been using drools 4.0 in our application. All the rules are loaded using RuleBase and PackageBuilder.</div>
<div>The application is pretty old, and has got lot of work into it.</div>
<div> </div>
<div>Now we want to use Drools 5.0 CEP (Fusion) along with the old rules (based on drools 4.0).</div>
<div> </div>
<div>But the problem , is, how can we hook-up the old &quot;RuleBase&quot; based sessions with the &quot;KnowledgeBase&quot; sessions of Drools 5.0??</div>
<div> </div>
<div>The use case is:</div>
<div> </div>
<div>1.Fact enters the system ( asserted using Rulebase), is enriched by rules (Based on Drools 4.0)</div>
<div>2.The same fact will be treated as EVENT (for CEP), for further correlation of Events (facts)  using KnowledgeBase as proposed i Drools 5.0.</div>
<div> </div>
<div>I am facing difficulty in hooking up the two sessions. Is there an way??</div>
<div> </div>
<div>Following is the test i did. ( <a href="http://drools.pastebin.com/m7d6c613b">http://drools.pastebin.com/m7d6c613b</a>)</div>
<div> </div>
<div>Can anybody help??</div>
<div> </div>
<div>IN MY JAVA CODE</div>
<div>
<div class="syntax">
<div class="text" style="FONT-FAMILY: monospace">
<ol>
<li class="li1 ln-xtra">
<div class="de1">//load up the rulebase</div></li>
<li class="li1">
<div class="de1">            RuleBase ruleBase = readRule(); // Read and load rules frm a packagebuilder()</div></li>
<li class="li1">
<div class="de1">            StatefulSession rBaseSession = ruleBase.newStatefulSession();</div></li>
<li class="li1">
<div class="de1">            Message message = new Message();</div></li>
<li class="li1">
<div class="de1">            message.setMessage(  &quot;Hello World&quot; );</div></li>
<li class="li1">
<div class="de1">            message.setStatus( Message.HELLO );</div></li>
<li class="li1">
<div class="de1">            rBaseSession.insert( message );</div></li>
<li class="li1">
<div class="de1">             </div></li>
<li class="li1">
<div class="de1">                @@//Load KnoweledgeBase              </div></li>
<li class="li1">
<div class="de1">                        KnowledgeBase kbase = loadRuleBase();  // I set options for EventProcessing in loadRuleBase()</div></li>
<li class="li1">
<div class="de1">                        KnowledgeSessionConfiguration conf = </div></li>
<li class="li1">
<div class="de1">                        KnowledgeBaseFactory.newKnowledgeSessionConfiguration();</div></li>
<li class="li1">
<div class="de1">                        ((SessionConfiguration) conf).setClockType( ClockType.REALTIME_CLOCK );</div></li>
<li class="li1">
<div class="de1">                        StatefulKnowledgeSession        kbaseSession =  kbase.newStatefulKnowledgeSession(conf,null);</div></li>
<li class="li1">
<div class="de1">                                                </div></li>
<li class="li1">
<div class="de1">                        rBaseSession.fireAllRules();  </div></li>
<li class="li1">
<div class="de1"> </div></li></ol></div>
<p class="de1"><font face="Courier New"></font> </p>
<p class="de1"><font face="Courier New">IN MY RULE FILE</font></p>
<ol>
<li class="li1">
<div class="de1">rule &quot;Hello World&quot;</div></li>
<li class="li1">
<div class="de1">        when</div></li>
<li class="li1">
<div class="de1">                $m : Message( status == Message.HELLO, message : message )</div></li>
<li class="li1">
<div class="de1">        then</div></li>
<li class="li1">
<div class="de1">                System.out.println( message ); </div></li>
<li class="li1">
<div class="de1">                Message message2 = new Message();</div></li>
<li class="li1">
<div class="de1">            message2.setMessage(  &quot;Hello World&quot; );</div></li>
<li class="li1">
<div class="de1">            message2.setStatus( Message.HELLO );</div></li>
<li class="li1">
<div class="de1"> </div></li>
<li class="li1 ln-xtra">
<div class="de1">        WorkingMemoryEntryPoint eventsignaturestream = drools.getEntryPoint(&quot;EVENT SIGNATURE STREAM&quot;) ;  // I Get a NULLPOINTER EXCEPTION here</div></li>
<li class="li1">
<div class="de1">            eventsignaturestream.insert(message2);</div></li>
<li class="li1">
<div class="de1"> </div></li>
<li class="li1">
<div class="de1">end</div></li></ol></div></div>
<div> </div>
<div> </div>
<div> </div>
<div> </div>