No, that is not the case.
I tried this:
            jel.assertString("(qwe)");
            jel.retractString("(qwe)");
            jel.assertString("(qwe)");

and it still doesn't work. I only get the retract event.
There must be something else going on in the bsaved file. Any clue?

Henrique


Ernest Friedman-Hill wrote:
> One explanation consistent with your observations is that the bsaved
> file already contains (qwe) and (asd) facts. If you attempt to assert
> a fact that already exists in working memory, the assert method
> returns FALSE and no event is sent.
>
>
> On Jul 5, 2007, at 5:47 AM, Henrique Lopes Cardoso wrote:
>
>> I just extended Rete to make the example simpler. I also tried it with
>> an independent JessListener implementing class, but the problem is
>> the same.
>>
>> I tried to do Rete.addJessListener() after bload, just as you suggested,
>> but the problem remains.
>>
>> So, I ask again: what could be wrong in my bsaved file that prevents
>> some JessEvents from being notified?
>>
>> Henrique
>>
>>
>> Jonathan Sewall wrote:
>>> I didn't extend Rete just to create a JessListener, but I did find
>>> that I needed to reregister my listeners after bload.
>>> Henrique Lopes Cardoso wrote:
>>>> I am stumbling for some time now with the use of a JessListener. After
>>>> many tries, I figured out that the listener does not work properly
>>>> when
>>>> I bload() certain files.
>>>>
>>>> Since the Rete class implements JessListener, for ease of testing I
>>>> extended it and got to the class below.
>>>> From my experiences, if the bsave file is empty, it works fine. If
>>>> I use
>>>> another bsaved file that I have, I get problems. Only the retracted
>>>> facts are being notified.
>>>>
>>>> Is this a bug? What should I look for in my bsaved file?
>>>>
>>>> Thanks.
>>>>
>>>> Henrique
>>>>
>>>> //---------------------------------------------
>>>> public class JEL extends Rete {
>>>>     public JEL() {
>>>>         super();
>>>>         // set event mask
>>>>         setEventMask(JessEvent.FACT);
>>>>         // load file
>>>>         try {
>>>>             FileInputStream fis = new
>>>> FileInputStream("somefile.bsave");
>>>>             bload(fis);
>>>>             fis.close();
>>>>         } catch (ClassNotFoundException cnfe) {
>>>>             cnfe.printStackTrace();
>>>>         } catch (IOException ioe) {
>>>>             ioe.printStackTrace();
>>>>         }
>>>>     }
>>>>        public void eventHappened(JessEvent jev) {
>>>>         System.out.println("EVENT:" +
>>>> JessEvent.getEventName(jev.getType()));
>>>>         switch(jev.getType()) {
>>>>             case JessEvent.FACT | JessEvent.REMOVED:   // retraction
>>>>                 Fact whatWasRetracted = (Fact) jev.getObject();
>>>> <                System.out.println("- - -" + whatWasRetracted);
>>>>                 break;
>>>>             case JessEvent.FACT:   // assertion
>>>>                 Fact whatWasAsserted = (Fact) jev.getObject();
>>>>                 System.out.println("+ + +" + whatWasAsserted);
>>>>                 break;
>>>>         }
>>>>     }
>>>>        public static void main(String args[]) {
>>>>         JEL jel = new JEL();
>>>>         try {
>>>>             jel.assertString("(qwe)");
>>>>             jel.retractString("(qwe)");
>>>>             jel.assertString("(asd)");
>>>>         } catch(JessException je) {
>>>>             je.printStackTrace();
>>>>         }
>>>>     }
>>>>    }
>>>> //----------------------------------------------
>>>>
>>>>
>>>>
>>>> --------------------------------------------------------------------
>>>> 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]
>>> --------------------------------------------------------------------
>>>
>>>
>>
>> -- 
>> ----- - - - - -  -  -  -  -  -   -   -
>> Henrique Lopes Cardoso
>> DEEC/FEUP
>> Rua Dr. Roberto Frias | 4200-465 Porto
>> PORTUGAL
>> (+351)225081400 ext.1315
>> [EMAIL PROTECTED] | www.fe.up.pt/~hlc
>> ----- - - - - -  -  -  -  -  -   -   -
>>
>> --------------------------------------------------------------------
>> 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]
>> --------------------------------------------------------------------
>
> ---------------------------------------------------------
> Ernest Friedman-Hill
> Advanced Software Research          Phone: (925) 294-2154
> Sandia National Labs                FAX:   (925) 294-2234
> PO Box 969, MS 9012                 [EMAIL PROTECTED]
> Livermore, CA 94550                 http://www.jessrules.com
>
> --------------------------------------------------------------------
> 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]
> --------------------------------------------------------------------
>
>

-- 
----- - - - - -  -  -  -  -  -   -   -
Henrique Lopes Cardoso
DEEC/FEUP
Rua Dr. Roberto Frias | 4200-465 Porto
PORTUGAL
(+351)225081400 ext.1315
[EMAIL PROTECTED] | www.fe.up.pt/~hlc
----- - - - - -  -  -  -  -  -   -   -

--------------------------------------------------------------------
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]
--------------------------------------------------------------------

Reply via email to