I think Steve Jernigan wrote:
> 
> 
> Has anyone put a CORBA interface on JESS or had JESS make CORBA calls?
> I have found some CLIPS-CORBA code but it only allows CLIPS to make CORBA
> calls  (i.e., CLIPS is not a CORBA service).
> 
> Barring a reply, I will begin making such a connection.  Does anyone have
> suggestions or pointers.  Here are some of my thoughts.
> 

The OMG has some Agent architecture standards under review; you might
want to have a look and see if your work could conform.

> 0.  When you add a Java object to JESS via definstance.  Does it copy
> (cache) the values of the properities to a JESS fact object and hold a
> reference or does it just hold a reference?  I am concerned about the
> network traffic if all of the "facts" in my knowledge base are actually
> remote CORBA objects.
> ... However, I don't think I will use the PropertyChangeListener.  I will have
> to hack the ReflectFunctions::definstance method.  I believe this will mean
> that Jess will not notice if others make changes to CORBA objects that it is
> currently working with.  Is that correct?  Is that the only impact?  This
> type of event notification can be added in later but for my batch-style
> processing it will not a problem.
> 

I cut and pasted here so I could answer these two points with one
answer: You can't have your cake and eat it too :) The answer to
question 0 is that Jess creates a fact that shadows each matched
object. The slots in this fact are updated whenever a PropertyChange
event is recieved for the associated object. This will lead to a
minimum of network traffic. If you hack out the PCL support, not only
will changes made by others not be visible, but changes made by you
won't be visible, either; PCLs are used to propagate all changes to
the object back to the shadow fact!

If you don't have some kind of notification in place,  you might as
well not use matching on Beans at all; you could simply read initial
values from the remote objects and assert your own facts based on
them. 

On the other hand, if you want to stay attached to the live object, you
can write trivial Bean wrappers for your CORBA stub classes
which add PCL support. THese will work as long as only your program is
talking to the remote objects, and you always go through the wrappers.

> 
> 1.  I think I will continue to use the java reflection cabilitiy to discover
> the interfaces of the CORBA objects I will be working will.  The alternative
> is to use the CORBA interface repository.  As I am pressed for time and the
> reflection is already working...
> 

> 2.  I will probably make a small subset of the JESS API available through
> CORBA.  Perhaps just enough to reset, assert a fact, and call run.
> 
> Any other ideas are appreciated.
> Thanks,
> steve
> ______________
> Steve Jernigan
> [EMAIL PROTECTED]
> work(512) 471-5350
> fax (512) 471-3316
> 
> ---------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the
> list. List problems? Notify [EMAIL PROTECTED]
> ---------------------------------------------------------------------
> 
> 


---------------------------------------------------------
Ernest Friedman-Hill  
Distributed Systems Research        Phone: (510) 294-2154
Sandia National Labs                FAX:   (510) 294-2234
Org. 8920, MS 9214                  [EMAIL PROTECTED]
PO Box 969                  http://herzberg.ca.sandia.gov
Livermore, CA 94550

---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list. List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------

Reply via email to