Re: [rules-users] startsWith function

2011-08-08 Thread Mattias Nilsson Grip

aftab wrote:
 
 I want to define rules for below function,
 
   private boolean isFixedNumber(Call call){
 
   if(call.getCalledNumber().startsWith(01) ||
 call.getCalledNumber().startsWith(02) ||
  call.getCalledNumber().startsWith(03) ){
  return true;
  }
   else{
   return false;
   }
   }
 
 Give some hints how can i define it  ?
 I was trying to define it in below format,
 rule Is Fixed Number
 dialect java 
   when c : CDRRecords 
 (calledNumber.startsWith( 011) )
   then 
   c.setFixedNetNumber(true);
   System.out.println(c.setFixedNetNumber (true) ); // 
 consequence
   
 end
 
 
 Thanks in advance for your support ...
 
If you're using Drools 5.2 you should be able to do:

c : CDRRecords( calledNumber str[startsWith] 011 )

If you are on earlier version of Drools you can match with a regular
expression:

c : CDRRecords( calledNumber matches 011.* )

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/startsWith-function-tp3228735p3234795.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Help needed

2011-08-08 Thread Mattias Nilsson Grip

prasad.pbc wrote:
 
 Hi Guys,
   Iam using Eclipse tool for writing drl , i have written drl .
 Then i have written an ant script to convert this drl to PKG .
 i have used drools5.1.1.jars. i was sucessfully convert drl to pkg.
 
 knowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(); 
 kbuilder.add( ResourceFactory.newFileResource(
 c:/Sample.pkg ), 
 ResourceType.PKG ); 
 iam getting below error:
 
 java.lang.ClassCastException: org.drools.reteoo.ReteooRuleBase cannot be
 cast to org.drools.rule.Package
 at
 org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:487)
 at
 org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:28)
 at com.test.rules.MyRulesEngine.init(MyRulesEngine.java:51)
 at com.test.rules.MyRulesEngine.getInstance(MyRulesEngine.java:39)
 at com.test.rules.MyRulesExecuter.main(MyRulesExecuter.java:38)
 
 
 Can anybody help resolving my problem..
 
 Thanks
 prasad
 
Based on the stack trace I would guess that the file Sample.pkg contains a
serialized KnowledgeBase and not a serialized KnowledgePackage. Maybe you
could try to do your export like this:

KnowledgeBase kbase = ...;
KnowledgePackage kpackage = kbase.getKnowledgePackages().iterator().next();
FileOutputStream fos = new FileOutputStream(new File(c:/Sample.pkg));
DroolsStreamUtils.streamOut(fos, kpackage);

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/Help-needed-tp3224168p3234832.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] a newbi question

2011-08-08 Thread wutongjoe
hello all,

I am a newbi on Drools and started my test work with a modified exapmle
included in drools v4.0.7.The compiled drl from a very simple modified  xls
file is like the follwing :


--code---
package org.drools.examples.decisiontable;
#generated from Decision Table
import org.apache.commons.lang.time.DateUtils;
import java.util.Date;
#From row number: 11
rule Pricing bracket_11

when
DateUtils.SEMI_MONTH==1001
then
policy.setBasePrice(999);
end
-code-

but I got an exception stack when trying to addPackage after compile :

--stack
Exception in thread Main Thread org.drools.rule.InvalidRulePackage:
[9,22]: unknown:9:22 mismatched token: [@46,221:222='==',76,9:22];
expecting type LEFT_PAREN
at org.drools.rule.Package.checkValidity(Package.java:424)
at 
org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:394)
at
org.drools.examples.PricingRuleDTExample.buildRuleBase(PricingRuleDTExample.java:67)
at
org.drools.examples.PricingRuleDTExample.executeExample(PricingRuleDTExample.java:38)
at
org.drools.examples.PricingRuleDTExample.main(PricingRuleDTExample.java:26)
--stack

yes,I was trying to test the usage of org.apache.commons.lang.time.DateUtils
inside a xls file,but it seemed something went wrong.Can someone tell me
what caused the exception? thanks a lot



--
View this message in context: 
http://drools.46999.n3.nabble.com/a-newbi-question-tp3234838p3234838.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] a newbi question

2011-08-08 Thread Wolfgang Laun
On 8 August 2011 10:02, wutongjoe wutong...@gmail.com wrote:

 hello all,

 I am a newbi on Drools and started my test work with a modified exapmle
 included in drools v4.0.7.The compiled drl from a very simple modified  xls
 file is like the follwing :


 --code---
 package org.drools.examples.decisiontable;
 #generated from Decision Table
 import org.apache.commons.lang.time.DateUtils;
 import java.util.Date;
 #From row number: 11
 rule Pricing bracket_11

when
DateUtils.SEMI_MONTH==1001


This looks very wrong. The result of compiling a correct decision table
should look like
SomeFactName( someFieldName == 1001)


then
policy.setBasePrice(999);


Where does the variable policy come from? It isn't bound to anything.


 end
 -code-

 but I got an exception stack when trying to addPackage after compile :

 --stack
 Exception in thread Main Thread org.drools.rule.InvalidRulePackage:
 [9,22]: unknown:9:22 mismatched token: [@46,221:222='==',76,9:22];
 expecting type LEFT_PAREN
at org.drools.rule.Package.checkValidity(Package.java:424)
at
 org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:394)
at

 org.drools.examples.PricingRuleDTExample.buildRuleBase(PricingRuleDTExample.java:67)
at

 org.drools.examples.PricingRuleDTExample.executeExample(PricingRuleDTExample.java:38)
at
 org.drools.examples.PricingRuleDTExample.main(PricingRuleDTExample.java:26)
 --stack

 yes,I was trying to test the usage of
 org.apache.commons.lang.time.DateUtils
 inside a xls file,but it seemed something went wrong.


Spreadsheets over xls are not a convenient vehicle for testing conditional
expressions or rule patterns in general. Write some DRL rules for this
purpose.



 Can someone tell me
 what caused the exception?


Syntax errors. Make sure to read the documentation on spreadsheets; how to
define a Fact type for a conditional element (a pattern) and how to add
constraints to it.

-W


 thanks a lot



 --
 View this message in context:
 http://drools.46999.n3.nabble.com/a-newbi-question-tp3234838p3234838.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 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] org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[

2011-08-08 Thread Mattias Nilsson Grip

bhavindalal wrote:
 
 Hello,
 I am new to Drools. On starting to execute a simple program, eclipse gives
 the following stacktrace as error. I even included the org.eclipse.jdt
 that comes with eclipse, but it is still giving me error. Anybody please
 suggest the problem. I am using Drools 5.0 and its dependencies and
 Eclipse Helios
 
 java.lang.NoSuchMethodError:
 org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;
   at
 org.drools.commons.jci.compilers.EclipseJavaCompiler$3.acceptResult(EclipseJavaCompiler.java:321)
   at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:335)
   at
 org.drools.commons.jci.compilers.EclipseJavaCompiler.compile(EclipseJavaCompiler.java:351)
   at
 org.drools.commons.jci.compilers.AbstractJavaCompiler.compile(AbstractJavaCompiler.java:51)
   at
 org.drools.rule.builder.dialect.java.JavaDialect.compileAll(JavaDialect.java:389)
   at
 org.drools.compiler.DialectCompiletimeRegistry.compileAll(DialectCompiletimeRegistry.java:56)
   at
 org.drools.compiler.PackageRegistry.compileAll(PackageRegistry.java:74)
   at 
 org.drools.compiler.PackageBuilder.compileAll(PackageBuilder.java:690)
   at 
 org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:653)
   at
 org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:290)
   at
 org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:488)
   at
 org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:25)
   at com.sample.DroolsTest.readKnowledgeBase(DroolsTest.java:40)
   at com.sample.DroolsTest.main(DroolsTest.java:23)
 
 Thanks
 
Looks like the problem could be caused by the existence of multiple versions
of JDT compiler on the classpath. Similar problems are described here:
http://community.jboss.org/wiki/RulesTomcat

You could try switching to janino compiler instead of JDT by setting system
property drools.compiler to JANINO. For example:
-Ddrools.compiler=JANINO in your program launch settings.

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/org-eclipse-jdt-internal-compiler-CompilationResult-getProblems-tp3211240p3234883.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread snehils
Hi,

I am new in Drools. I am using Drools version 5.1.0

My requirement is kind of request response, where I have to perform some
checks for the request and respond the result. Hence, I decided to go with
stateless knowledge session. 

I have prepared .DRL file and it contains set of rules. When some request
receives I have to identify the rule(s) belongs to that request and then
fire the rule(s).

I am not able to figure out how to categories the rules request wise in DRL
file? Also, how to fire only those rules which belongs to the category.

For example, there are three kinds of requests Rq1, Rq2 and Rq3. There are
rules in DRL file: R1, R2, R3, R4 and R5. R1, R2 belongs to Rq1, R3 belongs
to Rq2 and R4, R5 belongs to Rq3.

When some request receives only its belonging rules should be fired. For
example, on receiving of Rq2 only R3 should be fired.

Please provide me some code snipped or link.

Thanks


--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234893.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Wolfgang Laun
Basically you could do

rule RL1
when
   Request( type == Rq1,... )

which limits the rule to Requests of this type.

-W

On 8 August 2011 10:23, snehils sneh...@gmail.com wrote:

 Hi,

 I am new in Drools. I am using Drools version 5.1.0

 My requirement is kind of request response, where I have to perform some
 checks for the request and respond the result. Hence, I decided to go with
 stateless knowledge session.

 I have prepared .DRL file and it contains set of rules. When some request
 receives I have to identify the rule(s) belongs to that request and then
 fire the rule(s).

 I am not able to figure out how to categories the rules request wise in DRL
 file? Also, how to fire only those rules which belongs to the category.

 For example, there are three kinds of requests Rq1, Rq2 and Rq3. There are
 rules in DRL file: R1, R2, R3, R4 and R5. R1, R2 belongs to Rq1, R3 belongs
 to Rq2 and R4, R5 belongs to Rq3.

 When some request receives only its belonging rules should be fired. For
 example, on receiving of Rq2 only R3 should be fired.

 Please provide me some code snipped or link.

 Thanks


 --
 View this message in context:
 http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234893.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 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] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Esteban Aliverti
You can have a map of kbases containing the specific rules. When a request
arrives, you get the proper kbase from the map and create a ksession from
it.

Another way could be to use Control Objects in your rules.

Best Regards,



Esteban Aliverti
- Developer @ http://www.plugtree.com
- Blog @ http://ilesteban.wordpress.com


On Mon, Aug 8, 2011 at 10:23 AM, snehils sneh...@gmail.com wrote:

 Hi,

 I am new in Drools. I am using Drools version 5.1.0

 My requirement is kind of request response, where I have to perform some
 checks for the request and respond the result. Hence, I decided to go with
 stateless knowledge session.

 I have prepared .DRL file and it contains set of rules. When some request
 receives I have to identify the rule(s) belongs to that request and then
 fire the rule(s).

 I am not able to figure out how to categories the rules request wise in DRL
 file? Also, how to fire only those rules which belongs to the category.

 For example, there are three kinds of requests Rq1, Rq2 and Rq3. There are
 rules in DRL file: R1, R2, R3, R4 and R5. R1, R2 belongs to Rq1, R3 belongs
 to Rq2 and R4, R5 belongs to Rq3.

 When some request receives only its belonging rules should be fired. For
 example, on receiving of Rq2 only R3 should be fired.

 Please provide me some code snipped or link.

 Thanks


 --
 View this message in context:
 http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234893.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 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] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread snehils
I thought of doing same but this will become slow when number of rules are
more (100 or 200 rules). The given condition will be checked in each rule.

--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234939.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Mattias Nilsson Grip

snehils wrote:
 
 Hi,
 
 I am new in Drools. I am using Drools version 5.1.0
 
 My requirement is kind of request response, where I have to perform some
 checks for the request and respond the result. Hence, I decided to go with
 stateless knowledge session. 
 
 I have prepared .DRL file and it contains set of rules. When some request
 receives I have to identify the rule(s) belongs to that request and then
 fire the rule(s).
 
 I am not able to figure out how to categories the rules request wise in
 DRL file? Also, how to fire only those rules which belongs to the
 category.
 
 For example, there are three kinds of requests Rq1, Rq2 and Rq3. There are
 rules in DRL file: R1, R2, R3, R4 and R5. R1, R2 belongs to Rq1, R3
 belongs to Rq2 and R4, R5 belongs to Rq3.
 
 When some request receives only its belonging rules should be fired. For
 example, on receiving of Rq2 only R3 should be fired.
 
 Please provide me some code snipped or link.
 
 Thanks
 
One way could be to have conditions in your rules that check what kind of
request it is. Without knowing your problem in detail it's hard to know if
this is feasible. E.g. you could insert a request object as a fact into the
session and let rules in R3 have condition:

when
   Request(type = Rq2)
   ...

If you switch to stateful session instead of stateless you could use agenda
groups to achieve something similar. See Drools Expert user guide for
details on how to use agenda groups.

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234944.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Esteban Aliverti
Because of node sharing, it shouldn't be that bad if you use the Request()
constraint as the first conditional element of your rules. You must also use
always the same order when checking for more than 1 request.

For example:

rule Rule1
when
   Request ( type == Rq1 || type == Rq2)
   ...
then
  
end

rule Rule2
when
   Request ( type == Rq1 || type == Rq2)  --- Constraints are in the
same order
   ...
then
  
end

Wolfgang, please correct me if I'm wrong :)

Best Regards,



Esteban Aliverti
- Developer @ http://www.plugtree.com
- Blog @ http://ilesteban.wordpress.com


On Mon, Aug 8, 2011 at 10:41 AM, snehils sneh...@gmail.com wrote:

 I thought of doing same but this will become slow when number of rules are
 more (100 or 200 rules). The given condition will be checked in each rule.

 --
 View this message in context:
 http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234939.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 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] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Mattias Nilsson Grip

snehils wrote:
 
 I thought of doing same but this will become slow when number of rules are
 more (100 or 200 rules). The given condition will be checked in each rule.
 
The Rete algorithm will make sure that this does not become slow when number
of rules increases. Multiple rules with the same condition will only result
in one node in the Rete tree. I.e. each unique condition will only be
checked once.

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3234977.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Drools 4.0.7 compatible with Jboss 3.2.7

2011-08-08 Thread Dibya Ranjan
Thanks for the update.

Would like to know if Drools version 4.0.7 is compatible with J-boss version
3.2.7.


/BR
Dibya


 --
 View this message in context:
 http://drools.46999.n3.nabble.com/Drools5-2-2-integration-with-scala2-9-0-1-tp3229566p3231390.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.


 --

 Message: 2
 Date: Sun, 7 Aug 2011 14:33:25 +0200
 From: Dibya Ranjan dibya@gmail.com
 Subject: [rules-users] Regd Drools compatibility with Jboss version
 To: rules-users@lists.jboss.org
 Message-ID:
CAK=+3b9m73rkwqb951ze1ca-rpfbb+a+gds4ahvmagnb4tz...@mail.gmail.com
 
 Content-Type: text/plain; charset=iso-8859-1

 Hi

 We have a requirement to implement Drools in an application ,which is
 hosting the application server in Jboss with version as 3.2.7.

 It further uses java 1.4 version with the application being build and
 deployed with Ant 1.6.2.

 Could anyone help me in providing the Drools version that is compatible
 with
 above .

 --
 With Warm Regards

 Dibya Ranjan
 -
 ***

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


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread snehils
Thanks Mattias...
Now Wolfgang's solution will work 


Mattias Nilsson Grip wrote:
 
 The Rete algorithm will make sure that this does not become slow when
 number of rules increases. Multiple rules with the same condition will
 only result in one node in the Rete tree. I.e. each unique condition will
 only be checked once.
 
 /Mattias
 


--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3235065.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread snehils
Can you give some reference link ot code snippet? that would be helpful :)


Esteban wrote:
 
 You can have a map of kbases containing the specific rules. When a request
 arrives, you get the proper kbase from the map and create a ksession from
 it.
 
 Another way could be to use Control Objects in your rules.
 
 Best Regards,
 
 
 
 Esteban Aliverti
 - Developer @ http://www.plugtree.com
 - Blog @ http://ilesteban.wordpress.com
 


--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3235070.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread snehils
Is there any disadvantage switching in stateful session? 


Mattias Nilsson Grip wrote:
 
 If you switch to stateful session instead of stateless you could use
 agenda
 groups to achieve something similar. See Drools Expert user guide for
 details on how to use agenda groups.
 
 /Mattias
 


--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3235084.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] RuleAgent - loading rules help ?

2011-08-08 Thread Ivan Peshev ( M-Tel )
Hello,

Is there a way to tell RuleAgent to load rules not only from remote URL ?
i.e. some rules from URL and some rules from LOCAL path on my computer.
(e.g.: c:\some\folder\rule.drl)

Or if it's not possible exactly that way is there another way to have some 
rules loaded from URLs and some rules loaded from local path ?



Best Regards
Ivan

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


Re: [rules-users] Fire Rule in Stateless Knowledge Session

2011-08-08 Thread Mattias Nilsson Grip

snehils wrote:
 
 Is there any disadvantage switching in stateful session? 
 
If you switch to stateful sessions you have to ensure that you call the
dispose-method on your session when you are done with it. Otherwise you
could get a memory leak. Other than that I can't think of any disadvantage.

/Mattias

--
View this message in context: 
http://drools.46999.n3.nabble.com/Fire-Rule-in-Stateless-Knowledge-Session-tp3234893p3235136.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] RuleAgent - loading rules help ?

2011-08-08 Thread Swindells, Thomas
Have you tried just using a file url?

From: rules-users-boun...@lists.jboss.org 
[mailto:rules-users-boun...@lists.jboss.org] On Behalf Of Ivan Peshev ( M-Tel )
Sent: 08 August 2011 11:04
To: rules-users@lists.jboss.org
Subject: [rules-users] RuleAgent - loading rules help ?

Hello,

Is there a way to tell RuleAgent to load rules not only from remote URL ?
i.e. some rules from URL and some rules from LOCAL path on my computer.
(e.g.: c:\some\folder\rule.drl)

Or if it's not possible exactly that way is there another way to have some 
rules loaded from URLs and some rules loaded from local path ?



Best Regards
Ivan




**
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] RuleAgent - loading rules help ?

2011-08-08 Thread Esteban Aliverti
Which version of drools are you using?
If you are using a change-set to feed you kagent, then you can use other
protocols rather than http to get your rules from: file://, classpath://

Best Regards,



Esteban Aliverti
- Developer @ http://www.plugtree.com
- Blog @ http://ilesteban.wordpress.com


2011/8/8 Ivan Peshev ( M-Tel ) ivan.pes...@mobiltel.bg

 Hello,

 ** **

 Is there a way to tell RuleAgent to load rules not only from remote URL ?*
 ***

 i.e. some rules from URL and some rules from LOCAL path on my computer.***
 *

 (e.g.: c:\some\folder\rule.drl)

 ** **

 Or if it’s not possible exactly that way is there another way to have some
 rules loaded from URLs and some rules loaded from local path ?

 ** **

 ** **

 ** **

 Best Regards

 Ivan

 ** **

 ___
 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] RuleAgent - loading rules help ?

2011-08-08 Thread Ivan Peshev ( M-Tel )
Here is some more details:

* Currently our system loads rules from Guvnor installed on a server 
(version 5.0.0)
The problem is that there is no way to debug remotely the rules which are 
already deployed on Guvnor.

So I was wondering what if I load the rule I need to debug from my local 
machine instead maybe then I'll be able to debug it...

* On my local machine I have drools 5.1.0

Here is part of the original code:

  public synchronized void loadRulebasesDefinition() {
ruleBaseList = RulesMapper.getRulesMapper().retrieveAllRuleBases();

for (EntryInteger, Rule entry : ruleBaseList.entrySet()) {
  Rule currentRuleDefinition = entry.getValue();

  Properties ruleBaseProperties = 
createRuleBaseProperties(currentRuleDefinition);
  RuleAgent agent = RuleAgent.newRuleAgent(ruleBaseProperties);
  currentRuleDefinition.setRuleBase(agent.getRuleBase());
}
  }

  private Properties createRuleBaseProperties(Rule ruleDefinition) {
Properties properties = new Properties();
properties.setProperty(url, ruleDefinition.getRuleBaseURL());
properties.setProperty(poll, 
Integer.toString(ruleDefinition.getRuleBasePoll()));
return properties;
  }

The info about the rules is retrieved by the Mapper class from a DB and the 
result is a map:
MapInteger, Rule ruleBaseList


So I modified the loadRulebasesDefinition() method and I changed the url info 
in the DB for some of the rules to start with local: and to point to a 
location on my machine:
--
  public synchronized void loadRulebasesDefinition() {
ruleBaseList = RulesMapper.getRulesMapper().retrieveAllRuleBases();

for (EntryInteger, Rule entry : ruleBaseList.entrySet()) {
  Rule currentRuleDefinition = entry.getValue();

  Properties ruleBaseProperties = 
createRuleBaseProperties(currentRuleDefinition);
  if 
(ruleBaseProperties.getProperty(url).startsWith(local:))
  {
try {
 String path = 
ruleBaseProperties.getProperty(url).replaceAll(local:, );
 File file = new File(path);
 Reader source = new InputStreamReader(new 
FileInputStream(file));
 PackageBuilder builder = new PackageBuilder();
 builder.addPackageFromDrl( source );
 org.drools.rule.Package pkg = builder.getPackage();
 RuleBase ruleBase = RuleBaseFactory.newRuleBase();
 ruleBase.addPackage( pkg );
 currentRuleDefinition.setRuleBase(ruleBase);
} catch (DroolsParserException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
} catch (IOException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
}
  }
  else
  {
RuleAgent agent = 
RuleAgent.newRuleAgent(ruleBaseProperties);
currentRuleDefinition.setRuleBase(agent.getRuleBase());
  }
}
  }

  When I start the project it looks like working,
But when I try to debug as Drools application it goes to some point - loads 
some rules from URLs etc
- and boom:
Exception in thread main org.drools.RuntimeDroolsException: [Error: not a 
statement, or badly formed structure]
[Near : {... Unknown }]


Any idea ?
Thanks  Best regards
Ivan



From: rules-users-boun...@lists.jboss.org 
[mailto:rules-users-boun...@lists.jboss.org] On Behalf Of Esteban Aliverti
Sent: Monday, August 08, 2011 1:32 PM
To: Rules Users List
Subject: Re: [rules-users] RuleAgent - loading rules help ?

Which version of drools are you using?
If you are using a change-set to feed you kagent, then you can use other 
protocols rather than http to get your rules from: file://, classpath://

Best Regards,



Esteban Aliverti
- Developer @ http://www.plugtree.com
- Blog @ http://ilesteban.wordpress.com

2011/8/8 Ivan Peshev ( M-Tel ) 
ivan.pes...@mobiltel.bgmailto:ivan.pes...@mobiltel.bg
Hello,

Is there a way to tell RuleAgent to load rules not only from remote URL ?
i.e. some rules from URL and some rules from LOCAL path on my computer.
(e.g.: c:\some\folder\rule.drl)

Or if it's not possible exactly that way is there another way to have some 
rules loaded from URLs and some rules loaded from local path ?



Best Regards
Ivan



Re: [rules-users] Drools Execution Server memory leak?

2011-08-08 Thread fx242
Hi,

We are having the same problem with a similar setup (drools 5.2.0 Final)
using stateless sessions and camel integration, using a KB with ~3000 rules.
Session memory is never reclaimed, and after some hours we got an out of
memory error. We still dont know the cause, but the profiler shows that
these objects are increasing rapidly:

org.drools.reteoo.BetaMemory 176.478
+176.163 (+55925 %) 6.893 kB
org.drools.core.util.LeftTupleList   175.467
+175.156 (+56320 %) 6.854 kB
org.drools.core.util.RightTupleList  172.806
+172.536 (+63902 %) 6.750 kB
org.drools.rule.ContextEntry[ ]  164.784
+164.724 (+274540 %)2.659 kB
org.drools.core.util.Entry[ ]   
160.520 +160.449 (+225985 %)16.561 kB
org.drools.core.util.ObjectHashMap   158.309
+158.253
(+282595 %) 6.183 kB
org.drools.reteoo.AccumulateNode$AccumulateMemory154.505+154.503
(+7725150 %)4.828 kB
org.mvel2.integration.impl.IndexVariableResolver  76.262+76.234
(+272264 %) 1.787 kB

We used drools 5.1.1 before with no problems, so we think this leak is
upgrade related.
Regards,
TL


--
View this message in context: 
http://drools.46999.n3.nabble.com/rules-users-Drools-Execution-Server-memory-leak-tp3118864p3235954.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Drools5.2.2 integration with scala2.9.0.1

2011-08-08 Thread puneet.java
Thank Mario,

Thank a lot for the reply. The solution was really helpful and I am able to
run my code. I would also like to know is there any guideline or document to
debug these kind of errors, since it doesn't show any problem at compile
time or runtime.

Thanks,
Puneet

--
View this message in context: 
http://drools.46999.n3.nabble.com/Drools5-2-2-integration-with-scala2-9-0-1-tp3229566p3236613.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Guvnor - Unable to load a required class !! Help

2011-08-08 Thread John
Is com.employee.Fire listed in the Configuration: Imported types box on
the main screen for your package in Guvnor?

-John

--
View this message in context: 
http://drools.46999.n3.nabble.com/rules-users-Guvnor-Unable-to-load-a-required-class-Help-tp3230887p3236720.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Lock-on-active and ruleflow-group

2011-08-08 Thread bitter
I have three rules:

rule First rule
salience 20
ruleflow-group rfs_1
lock-on-active true
when
  $c: Car(color == red)  
then
  $c.setPrice(1);
  update($c);
end
   
rule Second rule
salience 25
ruleflow-group rfs_1
lock-on-active true
when
  $c: Car(size == small)
then
  $c.setPrice(2);
  update($c);
end

rule Second step
salience 40
ruleflow-group rfs_2
lock-on-active true
when
 $c: Car()
then
 System.out.println($c);
end

I have class, for example Car, which has three prioperties: color, size,
price.
I insert into session fact-Car(red, small), next start process, and
execute rules.
After that, price value is 1. I thought that Second rule should be fired
only because it has bigger salience but it is exactly the opposite. Could
anyone explain me why first rule was executed/fired and what can I do to
fire only Second rule (without invoking First rule). 
Thanks 

--
View this message in context: 
http://drools.46999.n3.nabble.com/Lock-on-active-and-ruleflow-group-tp3237089p3237089.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Off to a very bad start - please help

2011-08-08 Thread ronalbury
I downloaded droosljbpm-tools-distribution-5.2.0.Final and installed the
plugins in eclipse.

I downloaded droolsjbpm-integration-distribution-5.2.0.Final and imported
the example project into eclipse (Helios) per instructions in the
ReadMeDroolsjbpmintegration.txt file.  I used the first
mechanism(File/Import) rather than the second (which required m2eclipse
plugin).

The project is full of errors, and none of the java files would compile. 
There were no class files generated.

I created a Drools project from scratch.  I copied the src directory from
the example into the new project.  The java files now compile and the errors
are gone, however something is wrong because it can't find any of the drl
files.  Also, src/main/resources is not showing in the project tree.

I believe that I have followed the directions to the letter (in the first
case), and took a wild stab (in the second case) and I am still at the
starting point.

Won't someone please help me (and shouldn't the ReadMe file be fixed so
others don't have this problem)

Thanks
   Ron

--
View this message in context: 
http://drools.46999.n3.nabble.com/Off-to-a-very-bad-start-please-help-tp3237300p3237300.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Off to a very bad start - please help

2011-08-08 Thread ronalbury
I wasn't clear.  The resource files copied over as well as the Java files. 
However, the resources (and subdirectories) do not show up at the outer
level, as they do on the imported project.
http://drools.46999.n3.nabble.com/file/n3237310/DroolsProblem.png 

--
View this message in context: 
http://drools.46999.n3.nabble.com/Off-to-a-very-bad-start-please-help-tp3237300p3237310.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Off to a very bad start - please help

2011-08-08 Thread Mauricio Salatino
You should try with m2Eclipse, it will be easier to handle the dependencies.
Maven will take care of the dependencies and the project structure showing
you all the resources and adding all of them in the class path. If you don't
want to use maven , you should provide all the drools dependencies to the
project and set up the right build path in order to see your resources, as
in any java project.
Cheers.

On Mon, Aug 8, 2011 at 9:20 PM, ronalbury ronalb...@gmail.com wrote:

 I wasn't clear.  The resource files copied over as well as the Java files.
 However, the resources (and subdirectories) do not show up at the outer
 level, as they do on the imported project.
 http://drools.46999.n3.nabble.com/file/n3237310/DroolsProblem.png

 --
 View this message in context:
 http://drools.46999.n3.nabble.com/Off-to-a-very-bad-start-please-help-tp3237300p3237310.html
 Sent from the Drools: User forum mailing list archive at Nabble.com.
 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users




-- 
 - CTO @ http://www.plugtree.com
 - MyJourney @ http://salaboy.wordpress.com
 - Co-Founder @ http://www.jbug.com.ar

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


Re: [rules-users] stopping the rule sequence execution

2011-08-08 Thread Sachin Thapa
You can retract the object and it will stop firing rules.

Let me know if that doesnt work.

Regards,
Sachin


Sent from my iPhone

On Aug 9, 2011, at 12:12 AM, prasad6779 [via Drools] 
ml-node+3237751-938366868-8...@n3.nabble.com wrote:

 Hi All, 
 
 please help me, 
 
 i am having 10 rules i want to stop the another rules when a rule is fail my 
 condition in any of rule 1-10. 
 
 how can we achieve  
 
 
 advance thks 
 
 Regards 
 prasad
 prasad6779
 
 
 If you reply to this email, your message will be added to the discussion 
 below:
 http://drools.46999.n3.nabble.com/stopping-the-rule-sequence-execution-tp3237751p3237751.html
 To unsubscribe from Drools, click here.


--
View this message in context: 
http://drools.46999.n3.nabble.com/stopping-the-rule-sequence-execution-tp3237751p3237788.html
Sent from the Drools: User forum mailing list archive at Nabble.com.___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users