<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
David Boaz wrote:
<blockquote cite="mid:22366837.post@talk.nabble.com" type="cite">
<pre wrap="">Your answer refered to Statefull session. My question was regarding a
stateless session, that do not extend WorkingMemory.
</pre>
</blockquote>
you are using an event, that event exposes the knowledgeruntime in the
event listener - stateless and stateful use the same event model and
both expose the knowledgeruntime as a parameter. All events should
extend KnowledgeRuntimeEvent which provides the method
getKnowledgeRuntime.<br>
<br>
Mark<br>
<blockquote cite="mid:22366837.post@talk.nabble.com" type="cite">
<pre wrap="">Currently, I did an ugly work-around. The Activation returns a
Collection<FactHandle>, and I noticed that in runtime, the FactHandle is
instanceof InternalFactHandle, that do have a getObject(). So, My code looks
like:
for(FactHandle handle:activation.getFactHandles()){
assert(handle instanceof InternalFactHandle);
Object o=((InternalFactHandle)handle).getObject();
...
}
Im looking for the correct way to implement this functionality.
Thanks, David
Mark Proctor wrote:
</pre>
<blockquote type="cite">
<pre wrap="">David Boaz wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Thanks Mark,
The post bellow doesn't deal with the event listener registration.
Assuming
the registration was solved, now I have another issue. How to retrieve
the
Facts given Fact-handles? In a stateless session, I have no access to the
working memory.
</pre>
</blockquote>
<pre wrap="">If you are using StatefulKnowledgeSession. Then the Activation has
Collection< ? extends FactHandle> getFactHandles();
And the KnowledgeRuntime is always available, which extends the
WorkingMemory.
Mkar
</pre>
<blockquote type="cite">
<pre wrap="">David
Mark Proctor wrote:
</pre>
<blockquote type="cite">
<pre wrap="">David Boaz wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Hi all,
Im trying to listen to the events fired during the evaluation of a
stateless
session. I implemented org.drools.event.rule.AgendaEventListener. The
events
fire as expected. From the event I can extract the Activation, the Rule
and
the list of FactHandles. Now, from each FactHandle I want to retrieve
the
associated fact (Object). For that, I need a WorkingMemory. But the WM
doesn't participate in the event signature. In addition, since Im using
a
stateless session, the working memory does not exist until I execute()
method.
Can you please help?
</pre>
</blockquote>
<pre wrap="">The event listeners don't work in the last release, this is fixed in
trunk, please give it a try in a snapshot:
<a class="moz-txt-link-freetext" href="https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/">https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/</a>
</pre>
<blockquote type="cite">
<pre wrap="">Thanks, David
</pre>
</blockquote>
<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>
<pre wrap="">
</pre>
</blockquote>
<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>
<pre wrap=""><!---->
</pre>
</blockquote>
<br>
</body>
</html>