Ernest,
Thanks for the reply and I apologize for the typo (oops!). I tried what
you said and still got the null pointer, so I added r.reset() to main()
and everything worked fine. So the working java code would be as follows.
Thanks again,
Ryan
working java code
import jess.*;
public class FetchVal
{
public static void main(String[] unused) throws JessException
{
Rete r = new Rete();
r.executeCommand("(batch store.clp)");
r.reset();
r.run();
Value v = r.fetch("Result");
System.out.println(v.stringValue(r.getGlobalContext()));
}
}
On Thu, 22 Mar 2001, friedman_hill ernest j wrote:
> Hi Ryan,
>
> The code shown here is pretty close. I see two things wrong with it.
> First, the store.clp file contains the definition of a global and of a
> rule, but it doesn't do anything about firing the rule; so after
> calling (batch), those two things are defined, but the right-hand-side
> of the rule hasn't been executed. Adding (run) to the end of
> store.clp, or calling r.run() in main() after the executeCommand()
> call, would run the rule and therefore execute the store command.
>
> Second, the String used to fetch the result ("xmlResult") doesn't
> match the one used to store it ("Result"). The two have to match
> exactly. Any number of datums can be store simultaneously, each under
> its own name.
>
> I think Ryan G. Beckes (Home) wrote:
> > Hello,
> >
> > I am trying to call a clips file, store a string in the clips file and
> > then fetch it in my java code. I get a null pointer exception when running
> > FetchVal.
> >
> > Ryan
> >
> > Java code
> > import jess.*;
> > public class FetchVal
> > {
> > public static void main(String[] unused) throws JessException
> > {
> > Rete r = new Rete();
> > r.executeCommand("(batch store.clp)");
> > Value v = r.fetch("xmlResult");
> > System.out.println(v.stringValue(r.getGlobalContext()));
> >
> > }
> > }
> >
> > JESS code (store.clp)
> > (defglobal ?*Result* = (new java.lang.String))
> >
> > (defrule initialize
> > =>
> >
> > (bind ?*Result* "stuff")
> > (store "Result" ?*Result*)
> > )
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > 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
> Distributed Systems Research Phone: (925) 294-2154
> Sandia National Labs FAX: (925) 294-2234
> Org. 8920, MS 9012 [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 (use your own address!) List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------