Some more research revealed that the entity beans managed by Hibernate
(3.2.4) get proxies with classes like
"<actual_entity_class_name>_$$_javassist_XXX" with the actual bean's
class as a superclass (as tihomir noted!) and are correctly recognized
by the Drools engine.
But from what I saw JBoss Seam 2.2.0.GA actually uses Javassist and the
session bean proxies end up with dynamically generated classes like
superclass is java.lang.Object (!) and when asserted as a fact such
object is obviously not recognized by the Drools and corresponding rules
do not fire.
So it looks that there is a problem as Drools is unable to correctly
recognize JBoss Seam components assigned as facts possibly due to the
different way in which JBoss Seam creates proxies compared to Hibernate.
On 02/28/2011 07:00 PM, rules-users-request(a)lists.jboss.org wrote:
> Send rules-users mailing list submissions to
> To subscribe or unsubscribe via the World Wide Web, visit
> or, via email, send a message with subject or body 'help' to
> You can reach the person managing the list at
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of rules-users digest..."
> Today's Topics:
> 1. Unable to start drools-server 5.1.1 or 5.2.0.M1 under Tomcat
> 6.0.30 (A R)
> 2. Re: Drools.NET active? (FrankVhh)
> 3. Re: Unable to start drools-server 5.1.1 or 5.2.0.M1 under
> Tomcat 6.0.30 (Esteban Aliverti)
> 4. Re: Drools.NET active? (Sean Su)
> 5. Re: Drools and JBoss Seam proxies (Tihomir Surdilovic)
> 6. Re: Drools and JBoss Seam proxies (Wolfgang Laun)
> Message: 1
> Date: Sun, 27 Feb 2011 10:52:42 -0800
> From: A R <andromeda918(a)gmail.com>
> Subject: [rules-users] Unable to start drools-server 5.1.1 or 5.2.0.M1
> under Tomcat 6.0.30
> To: rules-users(a)lists.jboss.org
> Content-Type: text/plain; charset="iso-8859-1"
> I don't seem to be able to get the drools server (5.1.1 or 5.2.0.M1) to
> startup correctly under Tomcat 6.0.30.
> Here are the steps I've taken:
> 1) cp drools-5.1.1-server.war to my webapps directory
> 2) deleted servlet-api-2.3.jar due to a conflict with tomcat's
> 3) On startup however I get the following error in the logs (same error for
> Configuration problem: Failed to import bean definitions from URL location
> Offending resource: class path resource [beans.xml]; nested exception is
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line
> 25 in XML document from class path resource [knowledge-services.xml] is
> invalid; nested exception is org.xml.sax.SAXParseException:
> cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration
> can be found for element 'drools:execution-node'.
> Where line 25 in the knowledge-services.xml file is:
> <drools:execution-node id="node1" />
> Full stack trace is here:
> Any help appreciated.
Please share me sample java code to query version of all the activity done
As I got some sample code to run over repository.xml using apache Jackrabbit
but I did not not get how to invoke the WebDev URL provioded by BRMS using
Please share some sample code and link to do the same
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/Query-Version-from-Ja...
Sent from the Drools - User mailing list archive at Nabble.com.
A fairly major blocker for some work I am doing is the ability to extend type
declare B extends A
Such that the patterns take into account the polymorphism (which I think
they already do). Is there any plans for this type of feature and/or is
there a way of intercepting the resulting Java definition arising from the
syntax in order to programmatically set this?
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/Extending-type-declar...
Sent from the Drools - User mailing list archive at Nabble.com.
Forwarded from drools-dev.
Based upon the single rule you show it is difficult to determine whether the
issue you report is caused elsewhere.
Some general comments however:-
- It is essential to include an "update($patient);" in your RHS if the
rule engine is to see the change in Patient properties in other rules.
- How many instances of Patient to you have in WM? Rules will activate
for each instance that match patterns.
---------- Forwarded message ----------
From: Nico ROEDERER <ino.nicolas(a)gmail.com>
Date: 1 March 2011 09:15
Subject: Re: [rules-dev] eval problem
To: Rules Dev List <rules-dev(a)lists.jboss.org>
(1) -> yes because when I print the value, the value is correct ( = 2 ).
Not the eval.
(2) -> yes, true. My list is in alphabtic mode...
(3) -> Every test I make made the wrong result
eval( $patient.getNbFactRisque() == 0)
or $patient : PatientDto( nbFactRisque == 0 ) ...
---> Why does those test are true dispite nbFactRisque = 2 ????
*It works fine when I run x time drools (one call for one rule) but it
doesn't work when I run one time with a List of rules.*
Can you tell me the right mailing list for those problems ?
Le 01/03/2011 10:03, Wolfgang Laun a écrit :
Please do not use this list for simple questions - it is reserved for
discussion Drools development itself.
(1) Did you inform the Drools engine about incrementing nbFactRisque?
(2) There is no such thing as "alphabetic mode" for rule execution.
(3) Why do you use eval when you can test the fact field?
Indication: Drools Expert manual, three times per day ;-)
On 1 March 2011 09:17, Nico ROEDERER <ino.nicolas(a)gmail.com> wrote:
> I've got an other problem with an eval function.
> I will try to discribe the path to the error.
> I've got a repository where some people can put rules with .drl extension.
> My program is listing this repository and execute every rule in this
> At the begining, I've got a 'PatientDto' who have a property :
> int nbFactRisque;
> (with getters and setters)
> Some rules increments this number.
> In the last rule (the rules are executed in alphabetic mode) I'm testing
> this number like this :
> rule "RisqueNormal"
> $patient : PatientDto()
> eval( $patient.getNbFactRisque() == 0)
> $patient.addDonnees( Constants.CLE_RISQUEPATIENT,
> Constants.RISQUE_NORMAL );
> System.out.println("RisqueNormal vérifié." +
> $patient.getNbFactRisque() + "Facteurs.");
> Here's my problem :
> The 'Then' traitement is always executed so the eval always think that $patient.getNbFactRisque()
> is equal to 0.
> But the system.out.println() show me that $patient.getNbFactRisque() = 2
> Here's the output : "RisqueNormal vérifié.2Facteurs.".
> Perhaps I did something wrong ? Can someone help me ?
> Thank you.
> rules-dev mailing list
rules-dev mailing list