Re: [rules-users] Guvnor - assigning roles to users

2009-05-06 Thread Jaroslaw Kijanowski
Hi,
 here's my understanding:
Roles are only then taken from JAAS, if you *disable* fine grained
authorization (set enable-role-based-authorization to false).
There are two roles that are available if you use JAAS: admin and non-admin.

So you can use JAAS for *authentication*, no problem. You can also use JAAS
for *authorization*, but then you have only two roles available. If you want
to use *Guvnor specific roles* for *authorization*, then you need to enable
fine grained authorization and set up all roles in Guvnor. Before you do
this you will have to create some user that is an administrator in Guvnor
using the GUI. Otherwise enabling fine grained authorization will make it
impossible to login as an administrator - JAAS will let you in, but Guvnor
will not let you do anything.



2009/5/6 Darrin Mison dmi...@redhat.com

 The Drools 5 guvnor guide states that you can specify the admin role for a
 user in your JAAS login configuration.
 It is also possible (thanks to JAAS) to define what users have the admin
 role for Guvnor

 This is also stated here:
 http://magazine.redhat.com/2008/08/12/jboss-drools-how-to-tuning-guvnor-part-1/#password

 I can't get this to work, the only way I can assign roles to users is using
 the web UI.

 Is this a bug or are the docs out of date ?  Or am I missing something ?

 *server/default/deploy/jboss-brms.war/WEB-INF/components.xml*
 security:identity authenticate-method=#{authenticator.authenticate}
 jaas-config-name=brms/
 security:role-based-permission-resolver
 enable-role-based-authorization=true/

 *server/default/conf/login-config.xml:*
   application-policy name=brms
  authentication
 login-module
 code=org.jboss.security.auth.spi.UsersRolesLoginModule flag=required
module-option
 name=usersPropertiesprops/brms-users.properties/module-option
module-option
 name=rolesPropertiesprops/brms-roles.properties/module-option
 /login-module
  /authentication
   /application-policy

 *server/default/conf/props/brms-users.properties*
 admin=admin123

 *server/default/conf/props/brms-roles.properties*
 admin=admin


 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Drools 5 Final location

2009-05-06 Thread Mark Proctor

J. Michael Dean wrote:
Where can I locate the 5.00 FINAL artifacts?  On Hudson the revisions 
are way beyond this version;  I found everything on SVN but not eager 
to try to build it myself.  Sorry for probable idiotic question.
We aren't doing a full release of 5.0.0, that was branched for the 
Drools Product. We'll publish 5.0.1 as the community release.


Mark



___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
  


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Hibernate proxy objects equality tests failing in Drools 5

2009-05-06 Thread Guto
Testing, I don´t think my 2 recent messages were sended to the list!!!

 Oh, and a couple other things I forgot to mention.

 I believe Hibernate by default will lazily load all association
 objects.  You have to explicitly set the lazy loading to false in
 order to get eager fetching.  I don't consider to be ideal as I have a
 pricing object that contains many optional attributes to about 10-15
 tables out there.

 Also, there appears one way to fix this under Groovy.  If you assign a
 proxy hibernate object to a class property that explicitly define the
 type of the object, then groovy will actually automatically recast it
 as that type.  For example:

 class MyDomainA {
String b
 }

 class MyDomainB {
MyDomainA a   // this will get proxied by hibernate
 }

 class MyPOJO {
MyDomainA a
 }

 if I assign it as follows:

 def pojo = new MyPOJO()

 pojo = myDomainB.a   // groovy will autoconvert the proxied object to
 the real class and store it as MyDomainA in MyPOJO.

 Drools, under this condition, will be fine with it.  However, this is
 not ideal as that means I need to basically create a duplicate POJO
 object to store all of the hibernate domain objects.  No good.

 oh well, back to my a.id == b.id. :)

 -Chris


 On May 4, 2009, at 1:29 PM, Guto wrote:

 Thanks Greg,

 But it´s not a lazy loading problem at all. I am not using any kind of
 lazy attribute inside the statefull drools session...

 Unfortunelly, i´ve just upgrade from drools 4GA to 5CR1 and the
 problem
 persist. Now I will try to make CLONES of the objects the came from
 the
 bank, just to see if that (temporary) solution works.


 Do you need the lazy loading functionality that proxies provide?
 It seems
 to me that if you have an EJB call that's providing the objects
 loaded
 from hibernate, that's probably not the case. (i.e. once the
 objects are
 loaded and returned by the EJB method, the hibernate session may no
 longer
 be available, so lazy loading could fail anyway.)  If you have
 access to
 the hibernate mapping just set lazy=false on your class mappings.

 Not to say that this use case shouldn't be addressed with drools,
 but if
 you're under a deadline... :)

 --- On Mon, 5/4/09, Guto g...@guto.net wrote:

 From: Guto g...@guto.net
 Subject: Re: [rules-users] Hibernate proxy objects equality tests
 failing   in Drools 5
 To: Rules Users List rules-users@lists.jboss.org
 Date: Monday, May 4, 2009, 2:42 PM
 Just now I notice one thing. The application that i am
 building is
 compleatly EJB centric. I have um EJB project that usually
 do all the
 database stuff, and another EJB project for the drools
 rules. Lets call
 them
 EJB-DATA and EJB-DROOLS. When the client calls for an
 specific data that
 must be threated thru the Drools rules it calls an
 Stateless method from
 EJB-DATA, inside the method, it gather the necessarie
 parameter
 information and them inside the EJB-DATA method it calls
 the EJB-DROOLS.
 (hoping not been confusing)

 (if you are using an fixed space font, here comes the
 sequence)

 Client -- EJB-DATA (gather information inside) --
 EJB-DROOLS
   -- return to Client data from EJB-DROOLS--
 return to EJB-DATA

 Now looking over my two projects, I notice that I make them
 apart so one
 could evolve with interfering the other.

 When I call EJB-DROOLS directly from an UNIT-TEST client
 with pojos
 parameters intantiated by the test, it pass.

 When I call EJB-DATA from an UNIT-TEST client (pojos
 created inside this),
 first i was getting an CORBA exception ´cause of a
 ClassNotFoundException
 for the hibernate PersistenceBag.

 That´s the way i figure out that my objects are bagged or
 proxied thru
 hibernate.

 I´ve tried to use the EntityManager.clear() (EJB3-JPA) to
 clean the pojos
 before send it and make them more like the ones from the
 first unit-test,
 but even so it´s not working.

 Then, possible solutions:
 1) Make equality test works from objects that came from
 hibernate from jpa.
 2) Kill the proxies and make them simple objects (not
 hibernate derivated).
 3) don´t know, but i´m been realy in a deadline here.


 again
 thanks for anyone in advance !

 --
 Guto Maia
 Consultor de TI / Desenvolvedor
 CSM - SCJP- SCWCD - SCBCD - ZCE





 In fact, i´m really using JPA with hibernate as an
 provider.

 Could you send me your hibernate config? I will
 compare some proprieties
 of tyour hibernate.config with my persistence.xml.

 I plenty sure that the rule is ok, since it is working
 with the unit test.

 If you need any help to mimic what your using with
 JPA, just ask.

 Thanks anyway.



 I'm using non-proxied hibernate backed POJOs
 in drools with no problems.
 (THe pojos aer generaed by hbm2java.)  I'll
 try configuring for proxies
 to
 see what happens.


 --- On Mon, 5/4/09, Gustavo Maia Neto
 g...@guto.net wrote:

 From: Gustavo Maia Neto g...@guto.net
 Subject: Re: [rules-users] Hibernate proxy
 objects equality tests
 failing in Drools 5
 To: Rules Users List
 

Re: [rules-users] Hibernate proxy objects equality tests failing in Drools 5

2009-05-06 Thread Guto
I don´t have a clue why is not working eather.

Unfortunelly I can´t really rely on a.id == b.id ´cause I have rules like:
$participante:Participante()  $participacoes: ArrayList(size == 0) from
collect(ParticipacaoCiclo(participante == $participante  saidaPosto ==
null  periodo == 1 ))

Do eager fetching, will really reduce my perfomace, since most of my
collection properties have a huge amount of data (I don´t use that data
inside the drools session, I don´t need them).

I have 2 clients one is an UnitTest that access the EJB and the other is
an JSF 1.2 webclient (the real application itself). I´m not using groovy
(not in this project, however I found that really interesting).

thanks.

just a question (==) will be translated to (equals) right?




 With the new hibernate jars and the migration to the new Javassist,
 what hibernate is essentially doing is dynamically generating
 hibernate proxy objects that should subclass the original file.
 Here's the interesting part.

 In groovy, comparing two hibernate objects:

 a.a == b.a

 works fine when they are the same type of object.  Under groovy, ==
 uses equals() to do the comparison.  That appears to work all good.
 However, taking these same two objects into Drools and comparing their
 subproperty when they are lazily loaded will cause the problems that
 a.a no longer equals to b.a.  Yet under groovy, it still says they are
 equal.

 There could be one of 2-3 things that can be done to fix this, which I
 haven't entirely tried.

 1) implement your own version of equals() and hashCode() and use the
 instanceOf() hibernate util method to do comparison.  Sadly, I have
 over 50 domains objects and I'm hoping not to have to implement all
 the methods.

 2) do a eager fetch of the properties.  This is probably the best and
 easy way, but I am getting this working well under Grails/groovy.
 Somehow it's still fetching them as proxy objects, but just loaded.
 Either that or the eager fetching isn't even working (I've yet to
 fully test this yet with hibernate logging turned on to check).

 3) use each domain's identity or some unique constraint to do the
 equality check.  This is my current cheating way of getting around
 the problem.  I simply use a.a.id == b.a.id.  However, this poses an
 additional complexity where I actually have to do null checks for the
 property.  Otherwise, I'd get NPEs all over the place.

 At the end of the day, I don't see why Drools cannot see proxy objects
 as equal.  The only way I can think of is that there is some sort of
 direct object/class type check in Drools that's causing it not to
 realize that two objects are equal. But I could be wrong, and I hope
 I'm wrong. :)

 -Chris

 On May 4, 2009, at 1:29 PM, Guto wrote:

 Thanks Greg,

 But it´s not a lazy loading problem at all. I am not using any kind of
 lazy attribute inside the statefull drools session...

 Unfortunelly, i´ve just upgrade from drools 4GA to 5CR1 and the
 problem
 persist. Now I will try to make CLONES of the objects the came from
 the
 bank, just to see if that (temporary) solution works.


 Do you need the lazy loading functionality that proxies provide?
 It seems
 to me that if you have an EJB call that's providing the objects
 loaded
 from hibernate, that's probably not the case. (i.e. once the
 objects are
 loaded and returned by the EJB method, the hibernate session may no
 longer
 be available, so lazy loading could fail anyway.)  If you have
 access to
 the hibernate mapping just set lazy=false on your class mappings.

 Not to say that this use case shouldn't be addressed with drools,
 but if
 you're under a deadline... :)

 --- On Mon, 5/4/09, Guto g...@guto.net wrote:

 From: Guto g...@guto.net
 Subject: Re: [rules-users] Hibernate proxy objects equality tests
 failing   in Drools 5
 To: Rules Users List rules-users@lists.jboss.org
 Date: Monday, May 4, 2009, 2:42 PM
 Just now I notice one thing. The application that i am
 building is
 compleatly EJB centric. I have um EJB project that usually
 do all the
 database stuff, and another EJB project for the drools
 rules. Lets call
 them
 EJB-DATA and EJB-DROOLS. When the client calls for an
 specific data that
 must be threated thru the Drools rules it calls an
 Stateless method from
 EJB-DATA, inside the method, it gather the necessarie
 parameter
 information and them inside the EJB-DATA method it calls
 the EJB-DROOLS.
 (hoping not been confusing)

 (if you are using an fixed space font, here comes the
 sequence)

 Client -- EJB-DATA (gather information inside) --
 EJB-DROOLS
   -- return to Client data from EJB-DROOLS--
 return to EJB-DATA

 Now looking over my two projects, I notice that I make them
 apart so one
 could evolve with interfering the other.

 When I call EJB-DROOLS directly from an UNIT-TEST client
 with pojos
 parameters intantiated by the test, it pass.

 When I call EJB-DATA from an UNIT-TEST client (pojos
 created inside this),
 first i was getting an CORBA exception 

Re: [rules-users] Hibernate proxy objects equality tests failing in Drools 5

2009-05-06 Thread Kevin Alonso

Hi,

Using RuleFlow in Drools 5 into a action element, how can I read or get 
the classes that were in working memory ?


Thanks,

Kevin
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Drools and OpenJPA

2009-05-06 Thread Earnest Dyke
Greetings all,

I am trying to use Drools 4.0.7 with objects that are retrieved via OpenJPA. So 
I have a Person entity which is in the package com.my.company.entity. When I 
retrieve it via OpenJPA what I get, and subsequently insert into working 
memory, is a 
org.apache.openjpa.enhance.com$my$company$entity$Person$pcsubclass. I have 
tried casting before inserting into working memory but that does not change 
things. Drools is throwing java.lang.NoClassDefFoundError: 
org/apache/openjpa/enhance/com$my$company$entity$Person$pcsubclass exception. 

Any ideas of how to get around this? I really don't want to have to declare the 
concrete (OpenJPA) classes in my rules if I can help it.

Thanks in advance for any and all help!

Earnie!___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Guvnor Package Builds The EGT w/ver. 5.0.0 CR1

2009-05-06 Thread Ingold, Jonathan
Hello,

I use Guvnor's repository to store, organize and deploy our rules.
However Eclipse Ganymede with the Eclipse Guvnor Toolkit is used for all
of our editing and testing.

My question is this: After making a change to a rule (we use drls only)
I save the local copy and commit it to Guvnor.  However, when I run a
test class that checks to make sure these changes went into effect they
do not. In order for the changes to truly become effective, I must
rebuild the rule package in Guvnor.  The .properties file has
newInstance=true which according to the comments means the RuleBase
will be created fresh whenever there are changes.

I would really rather not have to switch over to guvnor and rebuild the
package anytime I make even a minor change in my rules for testing.
Does anyone know a way around this or am I doing something foolish
without realizing it?

Thanks,

Jon

___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Guvnor Package Builds The EGT w/ver. 5.0.0 CR1

2009-05-06 Thread Jaroslaw Kijanowski
Hi,
 same happens if you update your rule in Guvnor. The rule agent won't pick
up the changes; you have to rebuild the whole package. Same for EGT. So it
looks fine to me what you're seeing.

Cheers,
 Jarek

On Wed, May 6, 2009 at 8:05 PM, Ingold, Jonathan 
jonathan.ing...@jackson.com wrote:

 Hello,

 I use Guvnor's repository to store, organize and deploy our rules.
 However Eclipse Ganymede with the Eclipse Guvnor Toolkit is used for all
 of our editing and testing.

 My question is this: After making a change to a rule (we use drls only)
 I save the local copy and commit it to Guvnor.  However, when I run a
 test class that checks to make sure these changes went into effect they
 do not. In order for the changes to truly become effective, I must
 rebuild the rule package in Guvnor.  The .properties file has
 newInstance=true which according to the comments means the RuleBase
 will be created fresh whenever there are changes.

 I would really rather not have to switch over to guvnor and rebuild the
 package anytime I make even a minor change in my rules for testing.
 Does anyone know a way around this or am I doing something foolish
 without realizing it?

 Thanks,

 Jon

 ___
 rules-users mailing list
 rules-users@lists.jboss.org
 https://lists.jboss.org/mailman/listinfo/rules-users

___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


[rules-users] Guvnor Enumerations; values to be taken from db table

2009-05-06 Thread Premkumar Stephen
Hello,

We would like to have an enumeration that grabs values from a db table. We
will have a list of clients, which change quite regularly.

Maybe not at real-time, but at the time guvnor is started or something to
that effect.

Currently it is hard-coded. Has someone implemented something similar to
this effect?

If it could pick up from a flat-file which is on the path and the file name
could be configured, it would be workable. We could query the db and load
the flat-file.

Please let me know if you have other work-arounds for this scenario.

Regards,
Prem
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Drools 5 Final location

2009-05-06 Thread Steve Ronderos
Mark,

My team is currently evaluating Drools 5 and are very excited about it's 
upcoming release.  Do you have a target date for a 5.x.x.GA release? It 
would really be helpful when we are putting together our project's 
timeline.

Thanks!

Steve Ronderos 



From:
Mark Proctor mproc...@codehaus.org
To:
Rules Users List rules-users@lists.jboss.org
Date:
05/06/2009 09:24 AM
Subject:
Re: [rules-users] Drools 5 Final location
Sent by:
rules-users-boun...@lists.jboss.org



J. Michael Dean wrote: 
Where can I locate the 5.00 FINAL artifacts?  On Hudson the revisions are 
way beyond this version;  I found everything on SVN but not eager to try 
to build it myself.  Sorry for probable idiotic question. 
We aren't doing a full release of 5.0.0, that was branched for the Drools 
Product. We'll publish 5.0.1 as the community release.

Mark


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
 
___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users


Re: [rules-users] Drools 5 Final location

2009-05-06 Thread Mark Proctor

Steve Ronderos wrote:


Mark,

My team is currently evaluating Drools 5 and are very excited about 
it's upcoming release.  Do you have a target date for a 5.x.x.GA 
release? It would really be helpful when we are putting together our 
project's timeline.


Thanks!

Steve Ronderos


From:   Mark Proctor mproc...@codehaus.org
To: Rules Users List rules-users@lists.jboss.org
Date:   05/06/2009 09:24 AM
Subject:Re: [rules-users] Drools 5 Final location
Sent by:rules-users-boun...@lists.jboss.org






J. Michael Dean wrote:
Where can I locate the 5.00 FINAL artifacts?  On Hudson the revisions 
are way beyond this version;  I found everything on SVN but not eager 
to try to build it myself.  Sorry for probable idiotic question.
We aren't doing a full release of 5.0.0, that was branched for the 
Drools Product. We'll publish 5.0.1 as the community release.
Just waiting on MVEL 2.0.9 to be released, hoping mike brock will do 
that tomorrow. Once MVEL has a release we can release drools 5.0, as 
it's ready.


Mark



___
rules-users mailing list
_rules-us...@lists.jboss.org_ mailto:rules-users@lists.jboss.org
_https://lists.jboss.org/mailman/listinfo/rules-users_
 
___

rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users




___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
  


___
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users