I think I got it working now . I didnt know that globals need to be
inserted before insert hence I made the following change and it worked-
session.setGlobal( "p1", p1 );
session.insert(event);
instead of
session.insert(event);
session.setGlobal( "p1", p1 );
Thanks for all the help.
Thanks
Shikha
Shikha X Aggarwal/JPMCHASE
11/12/2008 09:50 AM
To
Rules Users List <rules-users(a)lists.jboss.org>
cc
"Rules Users List" <rules-users(a)lists.jboss.org>,
rules-users-bounces(a)lists.jboss.org
Subject
Re: [rules-users] DROOLS from clause giving Error
Thanks for the response. However I get the following error now . The only
change I made was
session.setGlobal( "p1", p1 );
Exception in thread "main" [Error: unable to access property (null
parent): p1]
[Near : {... Unknown ....}]
^
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
ReflectiveAccessorOptimizer.java:621)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getBeanProperty(
ReflectiveAccessorOptimizer.java:455)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
ReflectiveAccessorOptimizer.java:279)
at org.mvel2.o
Thanks
Shikha
"Edson Tirelli" <tirelli(a)post.com>
Sent by: rules-users-bounces(a)lists.jboss.org
11/07/2008 05:58 PM
Please respond to
Rules Users List <rules-users(a)lists.jboss.org>
To
"Rules Users List" <rules-users(a)lists.jboss.org>
cc
Subject
Re: [rules-users] DROOLS from clause giving Error
You correctly set the "list" global, but you made a mistake on the
processor global:
session.setGlobal( "processor", p1 );
Should be:
session.setGlobal( "p1", p1 );
[]s
Edson
2008/11/7 <shikha.x.aggarwal(a)jpmchase.com>
I am ok in using 4.0.7 , I use want to use the "from" clause which should
be returnign data in form of list, the whole idea being I dont want to
insert objects in memory.
This is how my rule file looks like -
package org.drools.examples;
import org.drools.examples.templates.DBSubscription;
import org.drools.examples.templates.Event;
global java.util.List list
global org.drools.examples.Processor p1;
rule "Rule1"
when
$event : Event(eventId == "eventId.IR.001")
$x : DBSubscription() from p1.getUsers()
then
list.add($x);
end
This is my calling code-
List arrayList = new ArrayList();
session.setGlobal( "list", arrayList );
session.insert(event);
Processor p1 = new Processor();
session.setGlobal( "processor", p1 );
session.fireAllRules();
session.dispose();
"Edson Tirelli" <tirelli(a)post.com>
Sent by: rules-users-bounces(a)lists.jboss.org
11/07/2008 05:10 PM
Please respond to
Rules Users List <rules-users(a)lists.jboss.org>
To
"Rules Users List" <rules-users(a)lists.jboss.org>
cc
Subject
Re: [rules-users] DROOLS from clause giving Error
Drools 4.0.7 is the stable version where things just work! Drools 4 uses
MVEL 1.3. The error bellow means your "p" variable is not set. Are you
setting your global before asserting the facts???
Drools 5.0M2 is a milestone release of the development version. If you
want to use Drools 5 development version we recommend you checkout and
build from trunk, because a lot of things were developed/fixed **after**
M2 was released. Drools 5 requires MVEL 2.0.1.
[]s
Edson
2008/11/7 <shikha.x.aggarwal(a)jpmchase.com>
Hi, I am so confused with which version of DROOLS I should be using . I
trid with 5.0.0 M2 and the error I saw is below. Then I tried with 4.0.7
but it gave error as below it had references of 1.4 of MVEL version.
Exception in thread "main" org.mvel.PropertyAccessException: null pointer
exception in property: p.getUsers()
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
ReflectiveAccessorOptimizer.java:143)
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(
ReflectiveAccessorOptimizer.java:96)
at org.mvel.ASTNode.getReducedValueAccelerated(ASTNode.java:194)
at org.mvel.MVELRuntime.execute(MVELRuntime.java:87)
at org.mvel.CompiledExpression.getValue(CompiledExpression.java:98)
at org.mvel.MVEL.executeExpression(MVEL.java:219)
Can you please suggest which version of DROOLS should I be using? can you
direc me to the MAVEN site.
Thanks
shikha
"Edson Tirelli" <tirelli(a)post.com>
Sent by: rules-users-bounces(a)lists.jboss.org
11/06/2008 03:12 PM
Please respond to
Rules Users List <rules-users(a)lists.jboss.org>
To
"Rules Users List" <rules-users(a)lists.jboss.org>
cc
Subject
Re: [rules-users] DROOLS from clause giving Error
This is an MVEL problem that Mike fixed in one of the latest versions: it
was raising that error message when unable to resolve a variable reference
(processor in this case).
Can you please confirm what versions of drools and mvel are you using?
Also, try to use mvel syntax, just in case:
$x : DBSubscription(report == $event.report) from processor.users
[]s
Edson
2008/11/6 <shikha.x.aggarwal(a)jpmchase.com>
Thanks for the quick respose..I modified the rule now to -
package org.drools.examples;
import org.drools.examples.templates.DBSubscription;
import org.drools.examples.templates.Event;
global java.util.List list
global org.drools.examples.Processor processor;
rule "Rule1"
when
$event : Event(eventId == "eventId.IR.001")
$x : DBSubscription(report == $event.report) from
processor.getUsers()
then
list.add($x);
end
Still facing some issue, Looking into it
Exception in thread "main" [Error: unbalanced braces ( ... )]
[Near : {... processor.getUsers( ....}]
at org.mvel.util.ParseTools.balancedCapture(ParseTools.java:1134)
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(
ReflectiveAccessorOptimizer.java:550)
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.getBeanProperty(
ReflectiveAccessorOptimizer.java:438)
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(
ReflectiveAccessorOptimizer.java:265)
at
org.mvel.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(
ReflectiveAccessorOptimizer.java:126)
at org.mvel.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:141)
at org.mvel.MVELRuntime.execute(MVELRuntime.java:77)
"David Sinclair" <dsinclair(a)chariotsolutions.com>
Sent by: rules-users-bounces(a)lists.jboss.org
11/06/2008 02:19 PM
Please respond to
Rules Users List <rules-users(a)lists.jboss.org>
To
"Rules Users List" <rules-users(a)lists.jboss.org>
cc
Subject
Re: [rules-users] DROOLS from clause giving Error
What is Processor? Doesn't look like it is a bound variable. Is it from
DBSubscription?
On Thu, Nov 6, 2008 at 2:11 PM, <shikha.x.aggarwal(a)jpmchase.com> wrote:
Hi,
I am using the from clause of drools and have written the following
expression -
rule "Rule1"
when
$event : Event(eventId == "eventId.IR.001"),
$dbS : DBSubscription( report == $event.report ) from
Processor.getUsers()
then
list.add($dbS);
Here processor.getUsers writtens me a list of DBSubscription, When I load
this package using
builder.addPackageFromDrl( source );
I get an error saying -
Exception in thread "main" org.drools.compiler.DroolsParserException:
Unknown error while parsing. This is a bug. Please contact the Development
team.
at org.drools.compiler.DrlParser.compile(DrlParser.java:219)
at org.drools.compiler.DrlParser.parse(DrlParser.java:73)
at org.drools.compiler.DrlParser.parse(DrlParser.java:77)
Would Appreciate any help on the same.
thanks
Shikha
This communication is for informational purposes only. It is not intended
as an offer or solicitation for the purchase or sale of any financial
instrument or as an official confirmation of any transaction. All market
prices, data and other information are not warranted as to completeness or
accuracy and are subject to change without notice. Any comments or
statements made herein do not necessarily reflect those of JPMorgan Chase
& Co., its subsidiaries and affiliates. This transmission may contain
information that is privileged, confidential, legally privileged, and/or
exempt from disclosure under applicable law. If you are not the intended
recipient, you are hereby notified that any disclosure, copying,
distribution, or use of the information contained herein (including any
reliance thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other defect that
might affect any computer system into which it is received and opened, it
is the responsibility of the recipient to ensure that it is virus free and
no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries
and affiliates, as applicable, for any loss or damage arising in any way
from its use. If you received this transmission in error, please
immediately contact the sender and destroy the material in its entirety,
whether in electronic or hard copy format. Thank you. Please refer to
http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK
legal entities.
_______________________________________________
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
This communication is for informational purposes only. It is not intended
as an offer or solicitation for the purchase or sale of any financial
instrument or as an official confirmation of any transaction. All market
prices, data and other information are not warranted as to completeness or
accuracy and are subject to change without notice. Any comments or
statements made herein do not necessarily reflect those of JPMorgan Chase
& Co., its subsidiaries and affiliates. This transmission may contain
information that is privileged, confidential, legally privileged, and/or
exempt from disclosure under applicable law. If you are not the intended
recipient, you are hereby notified that any disclosure, copying,
distribution, or use of the information contained herein (including any
reliance thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other defect that
might affect any computer system into which it is received and opened, it
is the responsibility of the recipient to ensure that it is virus free and
no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries
and affiliates, as applicable, for any loss or damage arising in any way
from its use. If you received this transmission in error, please
immediately contact the sender and destroy the material in its entirety,
whether in electronic or hard copy format. Thank you. Please refer to
http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK
legal entities.
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
JBoss, a division of Red Hat @
www.jboss.com
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
This communication is for informational purposes only. It is not intended
as an offer or solicitation for the purchase or sale of any financial
instrument or as an official confirmation of any transaction. All market
prices, data and other information are not warranted as to completeness or
accuracy and are subject to change without notice. Any comments or
statements made herein do not necessarily reflect those of JPMorgan Chase
& Co., its subsidiaries and affiliates. This transmission may contain
information that is privileged, confidential, legally privileged, and/or
exempt from disclosure under applicable law. If you are not the intended
recipient, you are hereby notified that any disclosure, copying,
distribution, or use of the information contained herein (including any
reliance thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other defect that
might affect any computer system into which it is received and opened, it
is the responsibility of the recipient to ensure that it is virus free and
no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries
and affiliates, as applicable, for any loss or damage arising in any way
from its use. If you received this transmission in error, please
immediately contact the sender and destroy the material in its entirety,
whether in electronic or hard copy format. Thank you. Please refer to
http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK
legal entities.
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
JBoss, a division of Red Hat @
www.jboss.com
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
This communication is for informational purposes only. It is not intended
as an offer or solicitation for the purchase or sale of any financial
instrument or as an official confirmation of any transaction. All market
prices, data and other information are not warranted as to completeness or
accuracy and are subject to change without notice. Any comments or
statements made herein do not necessarily reflect those of JPMorgan Chase
& Co., its subsidiaries and affiliates. This transmission may contain
information that is privileged, confidential, legally privileged, and/or
exempt from disclosure under applicable law. If you are not the intended
recipient, you are hereby notified that any disclosure, copying,
distribution, or use of the information contained herein (including any
reliance thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other defect that
might affect any computer system into which it is received and opened, it
is the responsibility of the recipient to ensure that it is virus free and
no responsibility is accepted by JPMorgan Chase & Co., its subsidiaries
and affiliates, as applicable, for any loss or damage arising in any way
from its use. If you received this transmission in error, please
immediately contact the sender and destroy the material in its entirety,
whether in electronic or hard copy format. Thank you. Please refer to
http://www.jpmorgan.com/pages/disclosures for disclosures relating to UK
legal entities.
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
JBoss, a division of Red Hat @
www.jboss.com
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
-----------------------------------------
This communication is for informational purposes only. It is not
intended as an offer or solicitation for the purchase or sale of
any financial instrument or as an official confirmation of any
transaction. All market prices, data and other information are not
warranted as to completeness or accuracy and are subject to change
without notice. Any comments or statements made herein do not
necessarily reflect those of JPMorgan Chase & Co., its subsidiaries
and affiliates.
This transmission may contain information that is privileged,
confidential, legally privileged, and/or exempt from disclosure
under applicable law. If you are not the intended recipient, you
are hereby notified that any disclosure, copying, distribution, or
use of the information contained herein (including any reliance
thereon) is STRICTLY PROHIBITED. Although this transmission and any
attachments are believed to be free of any virus or other defect
that might affect any computer system into which it is received and
opened, it is the responsibility of the recipient to ensure that it
is virus free and no responsibility is accepted by JPMorgan Chase &
Co., its subsidiaries and affiliates, as applicable, for any loss
or damage arising in any way from its use. If you received this
transmission in error, please immediately contact the sender and
destroy the material in its entirety, whether in electronic or hard
copy format. Thank you.
Please refer to
http://www.jpmorgan.com/pages/disclosures for
disclosures relating to UK legal entities.