Re: [rules-users] rules un end looping when update

2010-08-17 Thread Swindells, Thomas
You are calling update(m), which means that you are telling drools that m has 
changed, which means that any rule that has a condition based upon that rule 
gets re-evaluated, which causes Your First Rule to be fired again, which will 
then update m again...

Thomas

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 11:28
 To: rules-users@lists.jboss.org
 Subject: [rules-users] rules un end looping when update

 Hi all,
 Iam using rules 5.1
 iam getting un endded printout in my console.
 What could be the issue.
 Thanks in advance.

 #created on: Aug 16, 2010
 package com.test.supplier

 #list any import classes here.



 #declare any global variables here
 import com.test.supplier.dao.Workflow;



 rule Your First Rule
 when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
 then
 System.out.println(myid + its null values);
 update(m);


 end
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


**
This message is confidential and intended only for the addressee. If you have 
received this message in error, please immediately notify the 
postmas...@nds.com and delete it from your system as well as any copies. The 
content of e-mails as well as traffic data may be monitored by NDS for 
employment and security purposes. To protect the environment please do not 
print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, 
United Kingdom. A company registered in England and Wales. Registered no. 
3080780. VAT no. GB 603 8808 40-00
**

___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] rules un end looping when update

2010-08-17 Thread sony john
hi thomas,
Thanks for reply ,
I want to set values in workflow Object.  How i can do it.  I try
without update(m) but pojo is not updated. How i can accomplish the
below
after calling rules i need to get workflowid that has been updated in rules.  {
 ksession.insert(workflow);
ksession.fireAllRules();
System.out.println( workflow.getWorkflowId());
}


rule Your First Rule
when
m: Workflow(workflowActorId==null,myid:workflowActorId)
then
System.out.println(myid + its null values);
m.setWorkflowId(0);
update(m);


end

On Tue, Aug 17, 2010 at 6:30 PM, Swindells, Thomas tswinde...@nds.com wrote:
 You are calling update(m), which means that you are telling drools that m has 
 changed, which means that any rule that has a condition based upon that rule 
 gets re-evaluated, which causes Your First Rule to be fired again, which 
 will then update m again...

 Thomas

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 11:28
 To: rules-users@lists.jboss.org
 Subject: [rules-users] rules un end looping when update

 Hi all,
 Iam using rules 5.1
 iam getting un endded printout in my console.
 What could be the issue.
 Thanks in advance.

 #created on: Aug 16, 2010
 package com.test.supplier

 #list any import classes here.



 #declare any global variables here
 import com.test.supplier.dao.Workflow;



 rule Your First Rule
                 when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
         then
                 System.out.println(myid + its null values);
 update(m);


 end
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


 **
 This message is confidential and intended only for the addressee. If you have 
 received this message in error, please immediately notify the 
 postmas...@nds.com and delete it from your system as well as any copies. The 
 content of e-mails as well as traffic data may be monitored by NDS for 
 employment and security purposes. To protect the environment please do not 
 print this e-mail unless necessary.

 NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 
 4EX, United Kingdom. A company registered in England and Wales. Registered 
 no. 3080780. VAT no. GB 603 8808 40-00
 **

 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] rules un end looping when update

2010-08-17 Thread sony john
Hi Thomas,
thanks
Its my mistake i am able to solve it .
rule Your First Rule
when
m: Workflow(workflowActorId==null,myid:workflowActorId)
then
System.out.println(myid + its null values);
m.setWorkflowActorId(0);
update(m);


end

On Tue, Aug 17, 2010 at 6:47 PM, sony john sonyt...@gmail.com wrote:
 hi thomas,
 Thanks for reply ,
 I want to set values in workflow Object.  How i can do it.  I try
 without update(m) but pojo is not updated. How i can accomplish the
 below
 after calling rules i need to get workflowid that has been updated in rules.  
 {
  ksession.insert(workflow);
        ksession.fireAllRules();
 System.out.println( workflow.getWorkflowId());
 }


 rule Your First Rule
                when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
        then
                System.out.println(myid + its null values);
 m.setWorkflowId(0);
 update(m);


 end

 On Tue, Aug 17, 2010 at 6:30 PM, Swindells, Thomas tswinde...@nds.com wrote:
 You are calling update(m), which means that you are telling drools that m 
 has changed, which means that any rule that has a condition based upon that 
 rule gets re-evaluated, which causes Your First Rule to be fired again, 
 which will then update m again...

 Thomas

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 11:28
 To: rules-users@lists.jboss.org
 Subject: [rules-users] rules un end looping when update

 Hi all,
 Iam using rules 5.1
 iam getting un endded printout in my console.
 What could be the issue.
 Thanks in advance.

 #created on: Aug 16, 2010
 package com.test.supplier

 #list any import classes here.



 #declare any global variables here
 import com.test.supplier.dao.Workflow;



 rule Your First Rule
                 when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
         then
                 System.out.println(myid + its null values);
 update(m);


 end
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


 **
 This message is confidential and intended only for the addressee. If you 
 have received this message in error, please immediately notify the 
 postmas...@nds.com and delete it from your system as well as any copies. The 
 content of e-mails as well as traffic data may be monitored by NDS for 
 employment and security purposes. To protect the environment please do not 
 print this e-mail unless necessary.

 NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 
 4EX, United Kingdom. A company registered in England and Wales. Registered 
 no. 3080780. VAT no. GB 603 8808 40-00
 **

 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users



___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] rules un end looping when update

2010-08-17 Thread Swindells, Thomas
I prefer using modify rather than update but that is a minor issue.
Your key problem is that your rule fires regardless whether it needs to or not, 
you need to write your rule so it only fires when it is valid for the action to 
be performed.
In your current rule you seem to be doing a null check against workflowActorId 
and then setting workflowId; you probably want to make these consistent so you 
do a null check and then set that same property to an appropriate value.

Thomas

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 11:47
 To: Rules Users List
 Subject: Re: [rules-users] rules un end looping when update

 hi thomas,
 Thanks for reply ,
 I want to set values in workflow Object.  How i can do it.  I try
 without update(m) but pojo is not updated. How i can accomplish the
 below
 after calling rules i need to get workflowid that has been updated in rules.
 {
  ksession.insert(workflow);
 ksession.fireAllRules();
 System.out.println( workflow.getWorkflowId());
 }


 rule Your First Rule
 when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
 then
 System.out.println(myid + its null values);
 m.setWorkflowId(0);
 update(m);


 end

 On Tue, Aug 17, 2010 at 6:30 PM, Swindells, Thomas tswinde...@nds.com wrote:
  You are calling update(m), which means that you are telling drools that m
 has changed, which means that any rule that has a condition based upon that
 rule gets re-evaluated, which causes Your First Rule to be fired again,
 which will then update m again...
 
  Thomas
 
  -Original Message-
  From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
  boun...@lists.jboss.org] On Behalf Of sony john
  Sent: 17 August 2010 11:28
  To: rules-users@lists.jboss.org
  Subject: [rules-users] rules un end looping when update
 
  Hi all,
  Iam using rules 5.1
  iam getting un endded printout in my console.
  What could be the issue.
  Thanks in advance.
 
  #created on: Aug 16, 2010
  package com.test.supplier
 
  #list any import classes here.
 
 
 
  #declare any global variables here
  import com.test.supplier.dao.Workflow;
 
 
 
  rule Your First Rule
  when
  m: Workflow(workflowActorId==null,myid:workflowActorId)
  then
  System.out.println(myid + its null values);
  update(m);
 
 
  end
  ___
  rules-users mailing list
  rules-users@lists.jboss.org
  https://lists.jboss.org/mailman/listinfo/rules-users
 
 
 
 **
 
  This message is confidential and intended only for the addressee. If you
 have received this message in error, please immediately notify the
 postmas...@nds.com and delete it from your system as well as any copies. The
 content of e-mails as well as traffic data may be monitored by NDS for
 employment and security purposes. To protect the environment please do not
 print this e-mail unless necessary.
 
  NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18
 4EX, United Kingdom. A company registered in England and Wales. Registered no.
 3080780. VAT no. GB 603 8808 40-00
 
 **
 
 
  ___
  rules-users mailing list
  rules-users@lists.jboss.org
  https://lists.jboss.org/mailman/listinfo/rules-users
 

 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


**
This message is confidential and intended only for the addressee. If you have 
received this message in error, please immediately notify the 
postmas...@nds.com and delete it from your system as well as any copies. The 
content of e-mails as well as traffic data may be monitored by NDS for 
employment and security purposes. To protect the environment please do not 
print this e-mail unless necessary.

NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 4EX, 
United Kingdom. A company registered in England and Wales. Registered no. 
3080780. VAT no. GB 603 8808 40-00
**

___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] rules un end looping when update

2010-08-17 Thread sony john
Thanks Thomas,
I am able to update now.
One more question i would like to ask you.
I i need to insert one more object called WorkflowMail and call
WorkflowMail when the above rule condition is True how i can do it.
I can insert the object but how i can call that object in rules.
REgards
Sony John


On Tue, Aug 17, 2010 at 7:05 PM, Swindells, Thomas tswinde...@nds.com wrote:
 I prefer using modify rather than update but that is a minor issue.
 Your key problem is that your rule fires regardless whether it needs to or 
 not, you need to write your rule so it only fires when it is valid for the 
 action to be performed.
 In your current rule you seem to be doing a null check against 
 workflowActorId and then setting workflowId; you probably want to make these 
 consistent so you do a null check and then set that same property to an 
 appropriate value.

 Thomas

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 11:47
 To: Rules Users List
 Subject: Re: [rules-users] rules un end looping when update

 hi thomas,
 Thanks for reply ,
 I want to set values in workflow Object.  How i can do it.  I try
 without update(m) but pojo is not updated. How i can accomplish the
 below
 after calling rules i need to get workflowid that has been updated in rules.
 {
  ksession.insert(workflow);
         ksession.fireAllRules();
 System.out.println( workflow.getWorkflowId());
 }


 rule Your First Rule
                 when
 m: Workflow(workflowActorId==null,myid:workflowActorId)
         then
                 System.out.println(myid + its null values);
 m.setWorkflowId(0);
 update(m);


 end

 On Tue, Aug 17, 2010 at 6:30 PM, Swindells, Thomas tswinde...@nds.com 
 wrote:
  You are calling update(m), which means that you are telling drools that m
 has changed, which means that any rule that has a condition based upon that
 rule gets re-evaluated, which causes Your First Rule to be fired again,
 which will then update m again...
 
  Thomas
 
  -Original Message-
  From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
  boun...@lists.jboss.org] On Behalf Of sony john
  Sent: 17 August 2010 11:28
  To: rules-users@lists.jboss.org
  Subject: [rules-users] rules un end looping when update
 
  Hi all,
  Iam using rules 5.1
  iam getting un endded printout in my console.
  What could be the issue.
  Thanks in advance.
 
  #created on: Aug 16, 2010
  package com.test.supplier
 
  #list any import classes here.
 
 
 
  #declare any global variables here
  import com.test.supplier.dao.Workflow;
 
 
 
  rule Your First Rule
                  when
  m: Workflow(workflowActorId==null,myid:workflowActorId)
          then
                  System.out.println(myid + its null values);
  update(m);
 
 
  end
  ___
  rules-users mailing list
  rules-users@lists.jboss.org
  https://lists.jboss.org/mailman/listinfo/rules-users
 
 
 
 **
 
  This message is confidential and intended only for the addressee. If you
 have received this message in error, please immediately notify the
 postmas...@nds.com and delete it from your system as well as any copies. The
 content of e-mails as well as traffic data may be monitored by NDS for
 employment and security purposes. To protect the environment please do not
 print this e-mail unless necessary.
 
  NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18
 4EX, United Kingdom. A company registered in England and Wales. Registered 
 no.
 3080780. VAT no. GB 603 8808 40-00
 
 **
 
 
  ___
  rules-users mailing list
  rules-users@lists.jboss.org
  https://lists.jboss.org/mailman/listinfo/rules-users
 

 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


 **
 This message is confidential and intended only for the addressee. If you have 
 received this message in error, please immediately notify the 
 postmas...@nds.com and delete it from your system as well as any copies. The 
 content of e-mails as well as traffic data may be monitored by NDS for 
 employment and security purposes. To protect the environment please do not 
 print this e-mail unless necessary.

 NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18 
 4EX, United Kingdom. A company registered in England and Wales. Registered 
 no. 3080780. VAT no. GB 603 8808 40-00
 **

 ___
 rules-users mailing list
 rules-users

Re: [rules-users] rules un end looping when update

2010-08-17 Thread Swindells, Thomas
If you already have it in your working memory then just add an additional 
condition in your rule with no constraints:

rule Your First Rule
   when
  m: Workflow(workflowActorId==null,myid:workflowActorId)
  email : WorkflowMail()
   then
  System.out.println(myid + its null values);
  m.setWorkflowId(0);
 email.doSomething();
update(m);
update(email); // if you have conditions on email and want rule 
re-evaluation to happen
end

Alternatively you could have WorkflowMail as a global if you only have one 
instance of it, or add appropriate constraints if there are multiple instances 
- otherwise your rule will fire multiple times, once for each one of them.

 -Original Message-
 From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
 boun...@lists.jboss.org] On Behalf Of sony john
 Sent: 17 August 2010 14:13
 To: Rules Users List
 Subject: Re: [rules-users] rules un end looping when update

 Thanks Thomas,
 I am able to update now.
 One more question i would like to ask you.
 I i need to insert one more object called WorkflowMail and call
 WorkflowMail when the above rule condition is True how i can do it.
 I can insert the object but how i can call that object in rules.
 REgards
 Sony John


 On Tue, Aug 17, 2010 at 7:05 PM, Swindells, Thomas tswinde...@nds.com wrote:
  I prefer using modify rather than update but that is a minor issue.
  Your key problem is that your rule fires regardless whether it needs to or
 not, you need to write your rule so it only fires when it is valid for the
 action to be performed.
  In your current rule you seem to be doing a null check against
 workflowActorId and then setting workflowId; you probably want to make these
 consistent so you do a null check and then set that same property to an
 appropriate value.
 
  Thomas
 
  -Original Message-
  From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
  boun...@lists.jboss.org] On Behalf Of sony john
  Sent: 17 August 2010 11:47
  To: Rules Users List
  Subject: Re: [rules-users] rules un end looping when update
 
  hi thomas,
  Thanks for reply ,
  I want to set values in workflow Object.  How i can do it.  I try
  without update(m) but pojo is not updated. How i can accomplish the
  below
  after calling rules i need to get workflowid that has been updated in
 rules.
  {
   ksession.insert(workflow);
  ksession.fireAllRules();
  System.out.println( workflow.getWorkflowId());
  }
 
 
  rule Your First Rule
  when
  m: Workflow(workflowActorId==null,myid:workflowActorId)
  then
  System.out.println(myid + its null values);
  m.setWorkflowId(0);
  update(m);
 
 
  end
 
  On Tue, Aug 17, 2010 at 6:30 PM, Swindells, Thomas tswinde...@nds.com
 wrote:
   You are calling update(m), which means that you are telling drools that m
  has changed, which means that any rule that has a condition based upon that
  rule gets re-evaluated, which causes Your First Rule to be fired again,
  which will then update m again...
  
   Thomas
  
   -Original Message-
   From: rules-users-boun...@lists.jboss.org [mailto:rules-users-
   boun...@lists.jboss.org] On Behalf Of sony john
   Sent: 17 August 2010 11:28
   To: rules-users@lists.jboss.org
   Subject: [rules-users] rules un end looping when update
  
   Hi all,
   Iam using rules 5.1
   iam getting un endded printout in my console.
   What could be the issue.
   Thanks in advance.
  
   #created on: Aug 16, 2010
   package com.test.supplier
  
   #list any import classes here.
  
  
  
   #declare any global variables here
   import com.test.supplier.dao.Workflow;
  
  
  
   rule Your First Rule
   when
   m: Workflow(workflowActorId==null,myid:workflowActorId)
   then
   System.out.println(myid + its null values);
   update(m);
  
  
   end
   ___
   rules-users mailing list
   rules-users@lists.jboss.org
   https://lists.jboss.org/mailman/listinfo/rules-users
  
  
  
 
 **
  
   This message is confidential and intended only for the addressee. If you
  have received this message in error, please immediately notify the
  postmas...@nds.com and delete it from your system as well as any copies.
 The
  content of e-mails as well as traffic data may be monitored by NDS for
  employment and security purposes. To protect the environment please do not
  print this e-mail unless necessary.
  
   NDS Limited. Registered Office: One London Road, Staines, Middlesex, TW18
  4EX, United Kingdom. A company registered in England and Wales. Registered
 no.
  3080780. VAT no. GB 603 8808 40-00
  
 
 **
  
  
   ___
   rules-users mailing list
   rules-users@lists.jboss.org
   https