Wouldn't the fact id be (potentially) different in different instances
of the rules engine? I believe these are assigned in declaration
order, so unless every instance is defining instances in precisely the
same order, then you'd end up with the same logical fact having
different ids in different VMs.
FWIW, there's a good paper by someone who did something remarkably
similar: www.waset.org/pwaset/v4/v4-18.pdf
Myself, I've taken another route, which is using shadow facts for
everything I want distributed. The facts all have generated UUIDs, so
there's no issues with locally generated ids in a distributed system.
Then it's a fairly simple matter to translate to the local facts when
the shadow changes and vice versa.
On Dec 10, 2007, at 1:07 PM, Will Edwards wrote:
We're attempting to integrate a JavaSpaces implementation with Jess.
When an object changes in the JavaSpace we receive a notification
that the
object has changed and a copy of the changed object which we want to
add or
modify as a Jess shadow fact in the rules engine.
Our problem is that in this environment we do not get a reference to
the
original object but a new (by value) copy of the object. So, we
want to
modify the existing Jess fact with the new copy. Assuming we have the
FactIDValue (from the original rete.add) is there a reasonably
simple way to
do this?
Currently we are using a FactFilter to get the existing object, call
rete.remove() to remove the old copy and then rete.add() with the
new copy.
This is of course prone to potential race conditions, etc.
What we would like to do is use modify() or updateObject() but both
of these
seem to require that the original object reference be maintained.
Thanks in advance.
--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users
[EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
.
--------------------------------------------------------------------
--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------