[rules-users] rules-users Digest, Vol 80, Issue 33 - help on drools guvnor

pritha.ghosh at wipro.com pritha.ghosh at wipro.com
Wed Jul 17 09:34:10 EDT 2013


The same code runs fine with

urlResource = (org.drools.io.impl.UrlResource) org.drools.io.ResourceFactory
				.newUrlResource(new java.net.URL("http://localhost:8080/drools-guvnor/org.drools.guvnor.Guvnor/package/OBSPOC/OBSSNAP/EmployeeMapRule.drl"));

And resourse type "DRL"

Please find below the source code of the rule 

rule "EmployeeMapRule"
	    no-loop true
	    enabled true
	    dialect "mvel"
	    when
	        EmployeeMap : EmployeeMap( employeeID : EmployeeID != null , employeeName : EmployeeName != null , employeeCountry : EmployeeCountry in ( "INDIA", "Australia", "USA" ) )
	    then
	        EmployeeMap.setEmployeeName( employeeName+" Success" );
	        EmployeeMap.setEmployeeCountry( employeeCountry );
	        EmployeeMap.setEmployeeID( employeeID );
	        update( EmployeeMap );
	end

I have written the rule in guvnor.
Drools version 5.5


Please find below the source code for my model employeemap

	declare EmployeeMap
	    EmployeeName: String
	    EmployeeCountry: String
	    EmployeeID: Integer
	end
I have attached the pojo class I am using to fire the rule

Thanks,
Pritha


-----Original Message-----
From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of rules-users-request at lists.jboss.org
Sent: Wednesday, July 17, 2013 6:50 PM
To: rules-users at lists.jboss.org
Subject: rules-users Digest, Vol 80, Issue 33

Send rules-users mailing list submissions to
	rules-users at lists.jboss.org

To subscribe or unsubscribe via the World Wide Web, visit
	https://lists.jboss.org/mailman/listinfo/rules-users
or, via email, send a message with subject or body 'help' to
	rules-users-request at lists.jboss.org

You can reach the person managing the list at
	rules-users-owner at lists.jboss.org

When replying, please edit your Subject line so it is more specific than "Re: Contents of rules-users digest..."


Today's Topics:

   1. Re: help on drools guvnor (Stephen Masters)


----------------------------------------------------------------------

Message: 1
Date: Wed, 17 Jul 2013 14:19:21 +0100
From: Stephen Masters <stephen.masters at me.com>
Subject: Re: [rules-users] help on drools guvnor
To: Rules Users List <rules-users at lists.jboss.org>
Message-ID: <93FD4B72-09E1-4AEB-8ACD-CFC3B4BD36A9 at me.com>
Content-Type: text/plain; charset="us-ascii"

Have you tested that the rules fire when you load them as DRL?

It would probably be worth showing us what EmployeeMap looks like and the rule which you expect to fire if there is an EmployeeMap in working memory.

The Drools version would also be useful.

Steve


On 17 Jul 2013, at 14:04, pritha.ghosh at wipro.com wrote:

> Hi,
>  
> I am not able to run rules from .pkg resources.
>  
> Knowledgesession is getting populated with package and rules inside the packages but when I am firing ksession.fireAllRules(); no rules are getting executed.
>  
> Below is my program
>  
> final KnowledgeBuilder kbuilder = 
> KnowledgeBuilderFactory.newKnowledgeBuilder();
>  
>         // Use this line if calling rule defined using guvnor package
>         org.drools.io.impl.UrlResource urlResource;
>             try {
>                   urlResource = (org.drools.io.impl.UrlResource) org.drools.io.ResourceFactory
>                   .newUrlResource(new 
> java.net.URL("http://localhost:8080/drools-guvnor/org.drools.guvnor.Gu
> vnor/package/OBSPOC/OBSSNAP/OBSPOC_OBSSNAP.pkg"));
>            
>  
>                   urlResource.setBasicAuthentication("enabled");
>                   urlResource.setUsername("admin");
>                   urlResource.setPassword("admin");
>                   kbuilder.add(urlResource,ResourceType.PKG);
>             }
>              catch (MalformedURLException e) {
>                         System.out.println("malformed URL");
>                         e.printStackTrace();
>                   }
>             catch (Exception e) {
>                   // TODO Auto-generated catch block
>                   e.printStackTrace();
>             }
>             // create the knowledge base
>             KnowledgeBase kbase = 
> KnowledgeBaseFactory.newKnowledgeBase();
>  
>            
>  
>  
>         // Check the builder for errors
>         if (kbuilder.hasErrors()) {
>                         System.out.println(kbuilder.getErrors().toString() + "********");
>                         throw new RuntimeException("Unable to compile the rule file.");
>        }else{
>                         System.out.println(".....Rule File is Read Successfully....");
>         }
>  
>         // get the compiled packages (which are serializable)
>         final Collection pkgs = kbuilder
>                                         .getKnowledgePackages();
>  
>         // add the packages to a knowledgebase (deploy the knowledge packages).
>       //  final KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();
>          kbase.addKnowledgePackages(pkgs);
>      
>  
>         final StatefulKnowledgeSession ksession = kbase
>                                         
> .newStatefulKnowledgeSession();
>  
>         ksession.addEventListener(new DebugAgendaEventListener());
>         ksession.addEventListener(new 
> DebugWorkingMemoryEventListener());
>  
>          EmployeeMap employeeMap = new EmployeeMap();
>         employeeMap.setEmployeeCountry("INDIA");
>         employeeMap.setEmployeeID(1);
>         employeeMap.setEmployeeName("USERP");
>  
>         ksession.insert(employeeMap);
>      ksession.fireAllRules();
>     
>         
>         ksession.dispose();
>  
>  
> Thanks,
> Pritha
> Please do not print this email unless it is absolutely necessary.
> 
> The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.
> 
> WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.
> 
> www.wipro.com
> 
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20130717/6d327e7a/attachment.html 

------------------------------

_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

End of rules-users Digest, Vol 80, Issue 33
*******************************************

Please do not print this email unless it is absolutely necessary. 

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. 

www.wipro.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: EmployeeMap.java
Type: application/octet-stream
Size: 1042 bytes
Desc: EmployeeMap.java
Url : http://lists.jboss.org/pipermail/rules-users/attachments/20130717/5b7cbcef/attachment.obj 


More information about the rules-users mailing list