[rules-users] Facing Problem in BRL

Abhay B. Chaware Abhay.Chaware at kpitcummins.com
Wed May 18 05:31:08 EDT 2011


I was able to reproduce your error ... :)  try adding a new line ( enter ) after the comment in the  drools.package .... Or just remove the commented line "//Add imports, globals etc here which will be used by all the rule assets in this folder."

Your rule name is getting 'commented out' .........

-abhay
-----------------------



From: rules-users-bounces at lists.jboss.org [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Michael Anstis
Sent: Wednesday, May 18, 2011 2:53 PM
To: Rules Users List
Subject: Re: [rules-users] Facing Problem in BRL

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 <sumeet.karawal at tcs.com<mailto:sumeet.karawal at tcs.com>> 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: sumeet.karawal at tcs.com<mailto:sumeet.karawal at tcs.com>



 From:       "Abhay B. Chaware" <Abhay.Chaware at kpitcummins.com<mailto:Abhay.Chaware at kpitcummins.com>>

 To:         Rules Users List <rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>>
 Date:       05/18/2011 02:47 PM

 Subject:    Re: [rules-users] Facing Problem in BRL

 Sent by:    rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>






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: rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org> [
mailto:rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>] 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: sumeet.karawal at tcs.com<mailto:sumeet.karawal at tcs.com>



 From:       "Abhay B. Chaware" <Abhay.Chaware at kpitcummins.com<mailto:Abhay.Chaware at kpitcummins.com>>


 To:         Rules Users List <rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>>


 Date:       05/18/2011 01:09 PM


 Subject:    Re: [rules-users] Facing Problem in BRL


 Sent by:    rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>







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: rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org> [
mailto:rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>] 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: sumeet.karawal at tcs.com<mailto:sumeet.karawal at tcs.com>



 From:       "Abhay B. Chaware" <Abhay.Chaware at kpitcummins.com<mailto:Abhay.Chaware at kpitcummins.com>>


 To:         Rules Users List <rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>>


 Date:       05/18/2011 11:42 AM


 Subject:    Re: [rules-users] Facing Problem in BRL


 Sent by:    rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>







Could you post your rule content here ?


-----Original Message-----
From: rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org> [
mailto:rules-users-bounces at lists.jboss.org<mailto:rules-users-bounces at lists.jboss.org>] On Behalf Of Sumeet Karawal
Sent: Wednesday, May 18, 2011 11:38 AM
To: rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
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: sumeet.karawal at tcs.com<mailto:sumeet.karawal at tcs.com>
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
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-users



_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
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
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
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
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/rules-users



_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org<mailto:rules-users at lists.jboss.org>
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
rules-users at lists.jboss.org<mailto: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/20110518/45c063d9/attachment.html 


More information about the rules-users mailing list