This is my drools.package file: I have just created a package and imported the required class in this file.
//This is a package configuration file package com.rules; import com.model.PersonDetails; //Add imports, globals etc here which will be used by all the rule assets in this folder. Regards, Sumeet Karawal Mailto: [email protected] From: Michael Anstis <[email protected]> To: Rules Users List <[email protected]> Date: 05/18/2011 02:54 PM Subject: Re: [rules-users] Facing Problem in BRL Sent by: [email protected] This looks rogue:- //Add imports, globals etc here which will be used by all the rule assets in this folder Can you post the content of your drools.packages file? On 18 May 2011 10:19, Sumeet Karawal <[email protected]> wrote: This is the output that I get : //This is a package configuration file package com.rules; import com.model.PersonDetails; //Add imports, globals etc here which will be used by all the rule assets in this folder.rule "example" dialect "mvel" when $person : PersonDetails( age < "20" ) then $person.setDiscount( 10 ); end java.lang.RuntimeException: [8,1]: [ERR 102] Line 8:1 mismatched input 'WHEN' Regards, Sumeet Karawal Mailto: [email protected] From: "Abhay B. Chaware" <[email protected]> To: Rules Users List <[email protected]> Date: 05/18/2011 02:47 PM Subject: Re: [rules-users] Facing Problem in BRL Sent by: [email protected] Can you write the outputDRL to System.out and check if the generated DRL syntax is correct ? System.out.println(outputDRL); Before instantiating KnowledgeBuilder -----Original Message----- From: [email protected] [ mailto:[email protected]] On Behalf Of Sumeet Karawal Sent: Wednesday, May 18, 2011 2:42 PM To: Rules Users List Subject: Re: [rules-users] Facing Problem in BRL I tried to use this also but now I am getting different error: java.lang.RuntimeException: [8,1]: [ERR 102] Line 8:1 mismatched input 'WHEN' Also, what is the significance of the first line. I have copied it as the same. My code is : String curDir = System.getProperty("user.dir"); String fileName = curDir + "\\src\\com\\rules \\drools.package"; String rulePackageContent = FileUtils.readFileToString (new File (fileName)); fileName = curDir + "\\src\\com\\rules\\example.brl"; String brl = FileUtils.readFileToString(new File (fileName)); BRLPersistence read = BRXMLPersistence.getInstance(); BRLPersistence write = BRDRLPersistence.getInstance(); String outputDRL = rulePackageContent + write.marshal (read.unmarshal (brl)); KnowledgeBuilder builder = KnowledgeBuilderFactory. newKnowledgeBuilder(); builder.add(ResourceFactory.newReaderResource(new StringReader (outputDRL)), ResourceType.DRL); if (builder.hasErrors()) { throw new RuntimeException (builder.getErrors().toString ()); } KnowledgeBase knowledgeBase = KnowledgeBaseFactory.newKnowledgeBase(); knowledgeBase.addKnowledgePackages(builder.getKnowledgePackages ()); I don't know where I am getting this wrong. Regards, Sumeet Karawal Mailto: [email protected] From: "Abhay B. Chaware" <[email protected]> To: Rules Users List <[email protected]> Date: 05/18/2011 01:09 PM Subject: Re: [rules-users] Facing Problem in BRL Sent by: [email protected] I haven't been able to get "ResourceType.BRL" to work. This is how I do it .. String curDir = System.getProperty("user.dir"); String fileName = curDir + "\\src\\main\\rules\\drools.package"; String rulePackageContent = FileUtils.readFileToString(new File (fileName)); fileName = curDir + "\\src\\main\\rules\\eligibility.brl"; String brl = FileUtils.readFileToString(new File(fileName)); BRLPersistence read = BRXMLPersistence.getInstance(); BRLPersistence write = BRDRLPersistence.getInstance(); String outputDRL = rulePackageContent + write.marshal(read.unmarshal (brl)); KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder (); kbuilder.add(ResourceFactory.newReaderResource(new StringReader (outputDRL)), ResourceType.DRL); Try this. -abhay -----Original Message----- From: [email protected] [ mailto:[email protected]] On Behalf Of Sumeet Karawal Sent: Wednesday, May 18, 2011 11:47 AM To: Rules Users List Subject: Re: [rules-users] Facing Problem in BRL This is the brl that I have created: (Embedded image moved to file: pic18001.jpg) Regards, Sumeet Karawal Mailto: [email protected] From: "Abhay B. Chaware" <[email protected]> To: Rules Users List <[email protected]> Date: 05/18/2011 11:42 AM Subject: Re: [rules-users] Facing Problem in BRL Sent by: [email protected] Could you post your rule content here ? -----Original Message----- From: [email protected] [ mailto:[email protected]] On Behalf Of Sumeet Karawal Sent: Wednesday, May 18, 2011 11:38 AM To: [email protected] Subject: [rules-users] Facing Problem in BRL Hi, I am using Drools-Expert. I am having a class "Person" with data members as age and discount. I am trying to create a .brl. I have these statements in drools.package package com.rules; import com.model.PersonDetails; and in the example.brl I am providing the details of when and then conditions but on execution I am getting the following error : java.lang.RuntimeException: [4] Unable to expand: PersonDetails( age < "20" )[6] Unable to expand: PersonDetails fact0 = new PersonDetails ();[7] Unable to expand: fact0.setDiscount ( 10 );[8] Unable to expand: insert(fact0 ); It would be helpful is somebody guide me on how execute it. Also, I am creating the knowledgebase as: private static KnowledgeBase createKnowledgeBase() { KnowledgeBuilder builder = KnowledgeBuilderFactory.newKnowledgeBuilder (); builder.add (ResourceFactory.newClassPathResource( "com/rules/example.brl"),ResourceType.BRL); if (builder.hasErrors()) { throw new RuntimeException (builder.getErrors().toString ()); } KnowledgeBase knowledgeBase = KnowledgeBaseFactory.newKnowledgeBase(); knowledgeBase.addKnowledgePackages(builder.getKnowledgePackages ()); return knowledgeBase;} Thanks & Regards, Sumeet Karawal CEG - Open Source Technology Group Tata Consultancy Services Ph:- +912267782556 Cell:- +919833236440 Mailto: [email protected] Website: http://www.tcs.com ____________________________________________ Experience certainty. IT Services Business Solutions Outsourcing ____________________________________________ =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users =====-----=====-----===== Notice: The information contained in this e-mail message and/or attachments to it may contain confidential or privileged information. If you are not the intended recipient, any dissemination, use, review, distribution, printing or copying of the information contained in this e-mail message and/or attachments to it are strictly prohibited. If you have received this communication in error, please notify us by reply e-mail or telephone and immediately and permanently delete the message and any attachments. Thank you _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
