Re: [rules-users] Pooling stateful sessions to have threaded executions of a ruleset
Le 09/04/2014 11:20, Maxime Falaize a écrit : I confirm that the multithreaded rules evaluation is not currently supported. See https://github.com/droolsjbpm/drools/blob/master/drools-core/src/main/java/org/drools/core/RuleBaseConfiguration.java#L683 2014-04-07 12:27 GMT+02:00 Maxime Falaize maxime.fala...@gmail.com mailto:maxime.fala...@gmail.com: I'm sorry but I don't understand what you are talking about. In this article, there is nothing about multithreaded rules evaluation. It just says that the Phreak algorithm is designed for thread safety and *future* multicore processors exploitation. It doesn't mean that it is already multithreaded. Moreover I tested my appliciation with and without multithreaded sessions (I am using Drools 6.0.1.Final) and I noted a faster execution in the multithreaded one. 2014-04-04 13:53 GMT+02:00 jmercier jmerc...@genoscope.cns.fr mailto:jmerc...@genoscope.cns.fr: Le 04/03/2014 09:55, Maxime Falaize a écrit : Hello, I want to ask you if it is a good practive to pool stateful sessions for a specific ruleset to improve the execution performance. Actually in my application I execute my rules by calling SOAP webservice. For performance purpose, I test multithreaded calls to my webservice and I noted that when I pool sessions in the server side, it improves the performance a lot. To pool sessions, I just declare multiple ksession tag in my kmodule.xml : kbase name=KBase packages=com.example.* ksession name=KSession1/ ksession name=KSession2/ ksession name=KSession3/ ksession name=KSession4/ ksession name=KSession5/ /kbase In my spring webservice endpoint I just put that code to handle the pool : @Endpoint public class ExampleEndpoint implements InitializingBean { @Autowired private ExampleRuleService ruleService; private MapInteger, Boolean isRunningMap = new HashMapInteger, Boolean(); private static final int NB_POOL_SESSIONS = 5; @PayloadRoot(localPart = com.example.ExampleRequest) @ResponsePayload public ExampleResponse handleRequest( @RequestPayload ExampleRequest request) throws InterruptedException { KieServices ks = KieServices.Factory.get(); KieContainer kc = ks.getKieClasspathContainer(); while (true) { for (int i = 0; i NB_POOL_SESSIONS; i++) { boolean run = false; synchronized (isRunningMap) { if (!isRunningMap.get(i)) { isRunningMap.put(i, true); run = true; } } if (run) { KieSession ksession = kc.newKieSession(KSession + (i + 1)); ExampleResponse response = ruleService.run(ksession, request); ksession.dispose(); isRunningMap.put(i, false); return response; } } Thread.sleep(100); } } public void afterPropertiesSet() throws Exception { for (int i = 1; i = NB_POOL_SESSIONS; i++) { isRunningMap.put((i - 1), false); } } } It works well because in my benchmark I improve 5 times the performance (as I have 5 different threads) but I wondered if it is a good practice and if it does not hide any issues that I could have in the future. Thanks for your help. -- Maxime FALAIZE ___ rules-users mailing list rules-users@lists.jboss.org mailto:rules-users@lists.jboss.org https://lists.jboss.org/mailman/listinfo/rules-users Hi maxime, I do not remember if use drools 6 or drools 5. If you using drools 6. Phreaks algorithm use multi threading according to use 'from accummulate' far i understand here: http://planet.jboss.org/post/drools_6_performance_with_the_phreak_algorithm Instead to put a thread by ksession here rules evaluation are multi-threaded. ___ rules-users mailing list
[rules-users] Best practices to hand over from dev to business
Hi, So I've worked with Drools v5 on a few projects, and made the move to v6 yesterday. My programs typically have a model of pojos, plus some service utilities that do the stuff that's easier in Java than in Drools. I have implemented the system with DRLs and agenda groups, and one of the next steps is to hand over to business. My comments will allow a junior developer to maintain the program, but you'd be surprised how non-technical the business users can be. They won't touch code. So I'm hoping that Workbench will be what I need to facilitate the transition. With Drools 6, I've separated my web app from the DRL files, which now reside in their own mavenized Jar. Deployment is also very manual at the moment. Run mvn install, ftp war to server, drop in Jboss. So step 1 is probably to load the model and drl files into WB. Should a kiesession jar have pojos too? Only the parts you want to manage in WB? Then I presume that the main goal of WB is to provide a graphical ui to maintain rules, with business users messing around in their sandbox, making new snapshot versions of the rules jar? Then i change the web app's dependency to the new snapshot, rebuild and redeploy? What is the best scenario, to allow business users a UI and myself a simple deployment mechanism when business users want to test their changes, that i can hope to achieve with Drools and it's Uberfire parts? -- View this message in context: http://drools.46999.n3.nabble.com/Best-practices-to-hand-over-from-dev-to-business-tp4029206.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] If I have a rule that has a lot of permutation, which is the best approach to set it up? (Currently using decision table)
Attached is a sample rule decision table that I have set up. As you can see, I have designed my conditions very nicely in the picture. But if I were to add a new check, I will actually have to slowly key in the values. I'm wondering if there is any way that when I slot a condition into row 4, it will auto populate the other fields that are grouped together. This way, I wouldn't have to re-write those condition's information. So example if I have a new module coming in for P1 called MODULE-A, and I want to create a condition for it to say if the nationality is FR and Eligibility is Y, it is 500 dollar. I will probably click the + button at row 5 or even row 6. Then the fields, P1, Nationality, Eligibility, Fee Code will all be populated since they are grouped, and I will just key in the Module Code. Is there any way to do this? -- View this message in context: http://drools.46999.n3.nabble.com/If-I-have-a-rule-that-has-a-lot-of-permutation-which-is-the-best-approach-to-set-it-up-Currently-usi-tp4029207.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] If I have a rule that has a lot of permutation, which is the best approach to set it up? (Currently using decision table)
If rows have default values they will populate the cells when you add a new row. You could set default values, add your rows, and then remove said default values if no longer applicable. On 11 April 2014 13:35, SSWA alexsim...@hotmail.com wrote: Attached is a sample rule decision table that I have set up. As you can see, I have designed my conditions very nicely in the picture. But if I were to add a new check, I will actually have to slowly key in the values. I'm wondering if there is any way that when I slot a condition into row 4, it will auto populate the other fields that are grouped together. This way, I wouldn't have to re-write those condition's information. So example if I have a new module coming in for P1 called MODULE-A, and I want to create a condition for it to say if the nationality is FR and Eligibility is Y, it is 500 dollar. I will probably click the + button at row 5 or even row 6. Then the fields, P1, Nationality, Eligibility, Fee Code will all be populated since they are grouped, and I will just key in the Module Code. Is there any way to do this? -- View this message in context: http://drools.46999.n3.nabble.com/If-I-have-a-rule-that-has-a-lot-of-permutation-which-is-the-best-approach-to-set-it-up-Currently-usi-tp4029207.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] Problems deploying war
Hi, There have been a few people with Tomcat deployment issues for kie-drools-wb, so I thought I'd give it a try. These are the steps I followed for *successful* deployment (most of which is already documented, but not obvious, in the WAR's README.txt file):- *6.0.1* Starting with a clean install of Tomcat 7. 1. Copy kie-tomcat-integration JAR into TOMCAT_HOME/lib (org.kie:kie-tomcat-integration) 2. Copy JACC JAR into TOMCAT_HOME/lib(javax.security.jacc:artifactId=javax.security.jacc-api in JBoss Maven Repository) 3. Copy slf4j-api JAR into TOMCAT_HOME/lib(org.slf4j:artifactId=slf4j-api in JBoss Maven Repository) 4. Add valve configuration into TOMCAT_HOME/conf/server.xml inside Hostelement as last valve definition: Valve className=org.kie.integration.tomcat.JACCValve / 5. Edit TOMCAT_HOME/conf/tomcat-users.xml to include roles and users, make sure there will be 'analyst' or 'admin' roles defined as it's required to be authorized to use kie-wb 6. Delete org.uberfire.security.auth.AuthenticationSource inside WEB-INF/classes/META-INF/services 7. Rename org.uberfire.security.auth.AuthenticationSource-TOMCAT-JEE-SECURITY to org.uberfire.security.auth.AuthenticationSource inside WEB-INF/classes/META-INF/services 8. Increase Java's PermGen space by adding file TOMCAT_HOME/bin/setenv.sh containing export JAVA_OPTS=-Xmx1024m -XX:MaxPermSize=256m 9. Start Tomcat with TOMCAT_HOME/bin/startup.sh 10. Go to Management Console, http://localhost:8080/management 11. Deploy modified WAR If you do not complete these steps the WAR works out of the box but you'll need to define Users in WEB-INF/classes/login.config *6.1.0-SNAPSHOT* Starting with a clean install of Tomcat 7. 1. Copy kie-tomcat-integration JAR into TOMCAT_HOME/lib (org.kie:kie-tomcat-integration) 2. Copy JACC JAR into TOMCAT_HOME/lib (javax.security.jacc:artifactId=javax.security.jacc-api in JBoss Maven Repository) 3. Copy slf4j-api JAR into TOMCAT_HOME/lib (org.slf4j:artifactId=slf4j-api in JBoss Maven Repository) 4. Add valve configuration into TOMCAT_HOME/conf/server.xml inside Host element as last valve definition: Valve className=org.kie.integration.tomcat.JACCValve / 5. Edit TOMCAT_HOME/conf/tomcat-users.xml to include roles and users, make sure there will be 'analyst' or 'admin' roles defined as it's required to be authorized to use kie-wb 6. Start Tomcat with TOMCAT_HOME/bin/startup.sh 7. Go to Management Console, http://localhost:8080/management 8. Deploy modified WAR With kind regards, Mike On 10 April 2014 19:25, Ven Tadipatri ven.tadipa...@ll.mit.edu wrote: Hi, I'm trying to get set up with Drools and Guvnor. I've had some success building a test program with Drools, but when I saw that there's a webapp to manage and view rules, I was interested in getting that working as well. Unfortunately I haven't had much success with that. I downloaded the kie-drools-wb-distribution-6.0.1.Final.zip file from the JBoss drools website and dropped the binaries/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0.war into my Tomcat directory. Tomcat was just hanging for a while, then spit out a bunch of error messages: Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal INFO: Deploying web application archive /opt/tomcat/tomcat7/webapps/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0.war Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal SEVERE: Error listenerStart Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal SEVERE: Context [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] startup failed due to previous errors Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] appears to have started a thread named [pool-4-thread-1] but has failed to stop it. This is very likely to create a memory leak. Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] appears to have started a thread named [Thread-3] but has failed to stop it. This is very likely to create a memory leak. Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] appears to have started a thread named [pool-7-thread-1] but has failed to stop it. This is very likely to create a memory leak. Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] appears to have started a thread named [Git-Daemon-Accept] but has failed to stop it. This is very likely to create a memory leak. Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader
Re: [rules-users] Guvnor - Importing Drl FIle and its associated model
What version are you using? On 10 April 2014 20:39, mattmadhavan mmadha...@facs.org wrote: Hello, In have a working Drools project. I would like to import existing DRL files and associated Model file. I have a custom operator as well. I have packaged the Model and necessary operators and util global functions into a jar with their dependencies. How do I import my DRL and the model jar so that, the DRL's imports 'see' the referenced operators and functions and the Model (FACT) classes. Can some one please let me have the sequence of steps? Thanks Matt -- View this message in context: http://drools.46999.n3.nabble.com/Guvnor-Importing-Drl-FIle-and-its-associated-model-tp4029203.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] How to install Drool web WB - Tomcat?
Please see other email on this subject to which I've replied. On 11 April 2014 00:13, bbarani bbar...@gmail.com wrote: I download the drools workbench war (kie-drools-wb-distribution-6.0.1.Final.zip) and tried deploying it on Tomcat. The application gets deployed but not getting started (when seen from server console). Do I need to do anything else apart from placing the WAR file in the webapps directory? please advise -- View this message in context: http://drools.46999.n3.nabble.com/How-to-install-Drool-web-WB-Tomcat-tp4029204.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] Problems deploying war
To answer your remaining questions: What is the webapp trying to do with Git? Do I need to point it at some git repo? The Workbench tries to clone a demo repository from github.com on startup. This can be disabled. See herehttp://docs.jboss.org/drools/release/6.0.1.Final/drools-docs/html/wb.Workbench.html#wb.systemProperties. You'll need to set org.kie.demo to false. If you don't have an internet connection to github.com you can use the demo repositories bundled with the distribution (kie-wb-example-repositories-6.0.1.Final.zip in the download). You will need to set org.kie.example.repositories I tried the jboss instructions here: http://blog.athico.com/2013/05/how-to-build-and-run-drools-and-guvnor.html These relate to 5.5 not 6.0. Guvnor used to be the whole web app; now it is just a small component. See herehttp://blog.athico.com/2013/06/goodbye-guvnor-hello-drools-workbench.html . On 11 April 2014 15:49, Michael Anstis michael.ans...@gmail.com wrote: Hi, There have been a few people with Tomcat deployment issues for kie-drools-wb, so I thought I'd give it a try. These are the steps I followed for *successful* deployment (most of which is already documented, but not obvious, in the WAR's README.txt file):- *6.0.1* Starting with a clean install of Tomcat 7. 1. Copy kie-tomcat-integration JAR into TOMCAT_HOME/lib (org.kie:kie-tomcat-integration) 2. Copy JACC JAR into TOMCAT_HOME/lib(javax.security.jacc:artifactId=javax.security.jacc-api in JBoss Maven Repository) 3. Copy slf4j-api JAR into TOMCAT_HOME/lib(org.slf4j:artifactId=slf4j-api in JBoss Maven Repository) 4. Add valve configuration into TOMCAT_HOME/conf/server.xml inside Hostelement as last valve definition: Valve className=org.kie.integration.tomcat.JACCValve / 5. Edit TOMCAT_HOME/conf/tomcat-users.xml to include roles and users, make sure there will be 'analyst' or 'admin' roles defined as it's required to be authorized to use kie-wb 6. Delete org.uberfire.security.auth.AuthenticationSource inside WEB-INF/classes/META-INF/services 7. Rename org.uberfire.security.auth.AuthenticationSource-TOMCAT-JEE-SECURITY to org.uberfire.security.auth.AuthenticationSource inside WEB-INF/classes/META-INF/services 8. Increase Java's PermGen space by adding file TOMCAT_HOME/bin/setenv.sh containing export JAVA_OPTS=-Xmx1024m -XX:MaxPermSize=256m 9. Start Tomcat with TOMCAT_HOME/bin/startup.sh 10. Go to Management Console, http://localhost:8080/management 11. Deploy modified WAR If you do not complete these steps the WAR works out of the box but you'll need to define Users in WEB-INF/classes/login.config *6.1.0-SNAPSHOT* Starting with a clean install of Tomcat 7. 1. Copy kie-tomcat-integration JAR into TOMCAT_HOME/lib (org.kie:kie-tomcat-integration) 2. Copy JACC JAR into TOMCAT_HOME/lib (javax.security.jacc:artifactId=javax.security.jacc-api in JBoss Maven Repository) 3. Copy slf4j-api JAR into TOMCAT_HOME/lib (org.slf4j:artifactId=slf4j-api in JBoss Maven Repository) 4. Add valve configuration into TOMCAT_HOME/conf/server.xml inside Host element as last valve definition: Valve className=org.kie.integration.tomcat.JACCValve / 5. Edit TOMCAT_HOME/conf/tomcat-users.xml to include roles and users, make sure there will be 'analyst' or 'admin' roles defined as it's required to be authorized to use kie-wb 6. Start Tomcat with TOMCAT_HOME/bin/startup.sh 7. Go to Management Console, http://localhost:8080/management 8. Deploy modified WAR With kind regards, Mike On 10 April 2014 19:25, Ven Tadipatri ven.tadipa...@ll.mit.edu wrote: Hi, I'm trying to get set up with Drools and Guvnor. I've had some success building a test program with Drools, but when I saw that there's a webapp to manage and view rules, I was interested in getting that working as well. Unfortunately I haven't had much success with that. I downloaded the kie-drools-wb-distribution-6.0.1.Final.zip file from the JBoss drools website and dropped the binaries/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0.war into my Tomcat directory. Tomcat was just hanging for a while, then spit out a bunch of error messages: Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal INFO: Deploying web application archive /opt/tomcat/tomcat7/webapps/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0.war Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal SEVERE: Error listenerStart Apr 10, 2014 2:21:40 PM org.apache.catalina.core.StandardContext startInternal SEVERE: Context [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] startup failed due to previous errors Apr 10, 2014 2:21:40 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/kie-drools-wb-distribution-wars-6.0.1.Final-tomcat7.0] appears to have started a thread named [pool-4-thread-1] but has failed to stop it. This is very
[rules-users] KnowledgeAgentImpl registeredResourceMap memory issue
We are seeing this HashMap (KnowledgeAgentImpl.registeredResourceMap) keeps growing when a pkg is updated. It looks like creating more CompositeClassLoader and not removing the old rule references. So it causes KnowledgeAgentImpl use large memory. We are using 5.5.0.final.I am attaching an image from memory analyzer to show how the HashMap holds up multiple CompositeClassLoader and they are using about 230MB of memory. It increases when the pkg gets updated with about 150 rules. -- View this message in context: http://drools.46999.n3.nabble.com/KnowledgeAgentImpl-registeredResourceMap-memory-issue-tp4029216.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] KnowledgeAgentImpl registeredResourceMap memory issue
http://drools.46999.n3.nabble.com/file/n4029217/resourceMap.png -- View this message in context: http://drools.46999.n3.nabble.com/KnowledgeAgentImpl-registeredResourceMap-memory-issue-tp4029216p4029217.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] KnowledgeAgentImpl registeredResourceMap memory issue
Can you try 5.6.0.Final? Many issues regarding the KnowledgeAgent were fixed in that version Thanks Davide On 04/11/2014 08:45 PM, Cwen wrote: View this message in context: Re: KnowledgeAgentImpl registeredResourceMap memory issue http://drools.46999.n3.nabble.com/KnowledgeAgentImpl-registeredResourceMap-memory-issue-tp4029216p4029217.html Sent from the Drools: User forum mailing list archive http://drools.46999.n3.nabble.com/Drools-User-forum-f47000.html 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
[rules-users] Problem with Collection
Hi, I am using Drools 5.5.0 Final Expert to do Alarm Co-relation. I was trying to collect the facts in to the ArrayList collection. My drl file will look like below. From the Rule I calling an Java method to access the collected facts. /rule Rule [Alarm Collection] no-loop when $alarmColl : ArrayList() from collect(Alarm ( JustInserted == true; )) then // act on $alarmColl end/ while in my Java code I am loop through the collection to set an attribute of the Alarm Object. But while I am trying to set this attribute in the collection, the collection is getting updated and indexes are changed. Due to which all the objects are not updated. Even I tried using the iterator to access the ArrayList collection. Still the same issue. / while(index alarmColl.size()){ Alarm alarmObj=alarmColl.get(index) if(alarmObj.isJustInserted()) { alarmObj.setJustInserted(false); theScenario.getSession().update(alarmObj); } index++; }/ How can I update the objects in collection without changing the index or any other way to achieve this. -- View this message in context: http://drools.46999.n3.nabble.com/Problem-with-Collection-tp4029219.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] Problem with Collection
If there is no cogent reason for collecting a List and acting on it you should match a single Alarm and update it on the rule's right hand side: rule Rule [Alarm Collection] when $alarm: Alarm ( justInserted == true ) then modify( $alarm ){ setJustInserted( false ) } end Note that you still can store a reference to this Alarm in some global or call Java code for additional processing. If you do need a collected List, you'll have to copy it on the rule's right hand side before you call your Java code. ArrayList copy = new ArrayList( $alarmColl ); The update() call is causing instant reorganisation and the collect result is some sort of cache. On 12 April 2014 05:56, mohanm mohanm@gmail.com wrote: Hi, I am using Drools 5.5.0 Final Expert to do Alarm Co-relation. I was trying to collect the facts in to the ArrayList collection. My drl file will look like below. From the Rule I calling an Java method to access the collected facts. /rule Rule [Alarm Collection] no-loop when $alarmColl : ArrayList() from collect(Alarm ( JustInserted == true; )) then // act on $alarmColl end/ while in my Java code I am loop through the collection to set an attribute of the Alarm Object. But while I am trying to set this attribute in the collection, the collection is getting updated and indexes are changed. Due to which all the objects are not updated. Even I tried using the iterator to access the ArrayList collection. Still the same issue. / while(index alarmColl.size()){ Alarm alarmObj=alarmColl.get(index) if(alarmObj.isJustInserted()) { alarmObj.setJustInserted(false); theScenario.getSession().update(alarmObj); } index++; }/ How can I update the objects in collection without changing the index or any other way to achieve this. -- View this message in context: http://drools.46999.n3.nabble.com/Problem-with-Collection-tp4029219.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