Hi All,
I removed the commented lines from the drools.package file. Its now working
fine.
Thanks a lot!!!
I was using the brl for the first time, so didn't know that the rule name
was getting commented out.
I used the same code to convert it into drl and pass it to package builder.
Isn't there a way that we can use the ResourceType.brl instead of
ResourceType.drl .
like : builder.add (ResourceFactory.newClassPathResource(
"com/rules/example.brl"),ResourceType.BRL);
Also in a drl we can write many rules, but when we use brl do we have to
create different brl files for different rules. I mean can we have more
than one rule in a brl file.
Thanks & Regards,
Sumeet Karawal
Mailto: sumeet.karawal(a)tcs.com
From: "Abhay B. Chaware" <Abhay.Chaware(a)kpitcummins.com>
To: Rules Users List <rules-users(a)lists.jboss.org>
Date: 05/18/2011 03:03 PM
Subject: Re: [rules-users] Facing Problem in BRL
Sent by: rules-users-bounces(a)lists.jboss.org
I was able to reproduce your error … J 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(a)lists.jboss.org [
mailto:rules-users-bounces@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(a)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(a)tcs.com
From: "Abhay B. Chaware" <Abhay.Chaware(a)kpitcummins.com>
To: Rules Users List <rules-users(a)lists.jboss.org>
Date: 05/18/2011 02:47 PM
Subject: Re: [rules-users] Facing Problem in BRL
Sent by: rules-users-bounces(a)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(a)lists.jboss.org [
mailto:rules-users-bounces@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(a)tcs.com
From: "Abhay B. Chaware" <Abhay.Chaware(a)kpitcummins.com>
To: Rules Users List <rules-users(a)lists.jboss.org>
Date: 05/18/2011 01:09 PM
Subject: Re: [rules-users] Facing Problem in BRL
Sent by: rules-users-bounces(a)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(a)lists.jboss.org [
mailto:rules-users-bounces@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(a)tcs.com
From: "Abhay B. Chaware" <Abhay.Chaware(a)kpitcummins.com>
To: Rules Users List <rules-users(a)lists.jboss.org>
Date: 05/18/2011 11:42 AM
Subject: Re: [rules-users] Facing Problem in BRL
Sent by: rules-users-bounces(a)lists.jboss.org
Could you post your rule content here ?
-----Original Message-----
From: rules-users-bounces(a)lists.jboss.org [
mailto:rules-users-bounces@lists.jboss.org] On Behalf Of Sumeet Karawal
Sent: Wednesday, May 18, 2011 11:38 AM
To: rules-users(a)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(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
_______________________________________________
rules-users mailing list
rules-users(a)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(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
_______________________________________________
rules-users mailing list
rules-users(a)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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
This message contains information that may be privileged or confidential
and is the property of the KPIT Cummins Infosystems Ltd. It is intended
only for the person to whom it is addressed. If you are not the intended
recipient, you are not authorized to read, print, retain copy, disseminate,
distribute, or use this message or any part thereof. If you receive this
message in error, please notify the sender immediately and delete all
copies of this message. KPIT Cummins Infosystems Ltd. does not accept any
liability for virus infected mails.
_______________________________________________
rules-users mailing list
rules-users(a)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