I appreciate your help,it worked.
Sorry about all the trouble because it was an easy
solution,as i have tried it before,but not getting it
with javaObjectValue.
> From: [EMAIL PROTECTED]> Subject: Re: JESS: Userfunction arguments> Date:
> Wed, 9 Jan 2008 12:32:39 -0500> To: [email protected]> > You need to
> specifically request the specificUser property of the > JessUser object. You
> could do something like> > (defrule lockRule> "Testing the rule."> (JessUser
> { reportsLock == TRUE } (reportsLock ?value) > (specificUser ?su))> =>>
> (printout t "ReportsLock: " ?value crlf)> (calling DynamicReplanning ?su))> >
> > On Jan 9, 2008, at 12:00 PM, Manolis Nikoloudakis wrote:> > > That's
> exactly right.After I have batched the clp file and before I > > run it,> > I
> add a JessUser instance in the jess memory.Then I want to retreive a> >
> field(java bean-specificUser) of this instance from the jess memory > > via
> the> > defrule(as an argument of my userfunction).> >> > public class
> JessUser {> > private boolean reportsLock;> > private User
> specificUser;//<--this field I want to put as > > second argument> >> >
> public JessUser() {> > this.reportsLock=false;> > }> >> > public boolean
> isReportsLock(){> > return this.specificUser.hasReportsLock();> > }> > public
> void setReportsLock(boolean rep){> > this.reportsLock=rep;> > }> >> > public
> User getSpecificUser(){> > return this.specificUser;> > }> > public void
> setSpecificUser(User usr){> > this.specificUser=usr;> > }> > }> >> > If I
> finally get this specificUser field,will it be the field of > > the exact
> JessUser instance that I added in the engine before > > running it?> >> > >
> From: [EMAIL PROTECTED]> > > Subject: Re: JESS: Userfunction arguments> > >
> Date: Wed, 9 Jan 2008 11:04:51 -0500> > > To: [email protected]> > >> > >
> On Jan 9, 2008, at 10:14 AM, Manolis Nikoloudakis wrote:> > >> > > > (defrule
> lockRule> > > > "Testing the rule."> > > > (JessUser { reportsLock == TRUE }
> (reportsLock ?value))=>> > > > (printout t "ReportsLock: " ?value
> crlf)(calling DynamicReplanning> > > > specificUser)> > > > )> > > > where i
> want to express that if reportsLock bean of JessUser class> > > > is
> true,call(through calling variable) JessCaller file with a> > > > String
> argument(DynamicReplanning) and a User Object argument> > > >
> (specificUser).> > > >> > > > When I batch and run the clp file,I get the
> first argument> > > > right,but when I get the java object:> > > > 'User
> specificUser=(User)vv.get(2).javaObjectValue(context);'> > > > I have a
> java.lang.ClassCastException: java.lang.String cannot be> > > > cast to
> ProtegeCode.User.> > > > I imagine that the wrong part is in the defrule and
> I should> > > > declare 'specificUser' Object in another way,but I don't know
> > > exactly.> > >> > > OK. In the rule as you've written it, "specificUser"
> is just a Jess> > > symbol; calling javaObjectValue() is indeed going to
> convert that> > > symbol to a String. What you want there instead is
> something that> > > refers to an instance of your User class, yes? So where
> should this> > > User object come from? Is is a property of the JessUser
> object, or> > > would it come from somewhere else?> > >> > >> > >> > >
> ---------------------------------------------------------> > > Ernest
> Friedman-Hill> > > Informatics & Decision Sciences 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 owner-jess- > > [EMAIL PROTECTED]> >
> > --------------------------------------------------------------------> > >>
> >> >> > Express yourself instantly with MSN Messenger! MSN Messenger> >
> ---------------------------------------------------------> Ernest
> Friedman-Hill> Informatics & Decision Sciences 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]>
> -------------------------------------------------------------------->
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/