Hi,

There is a lot of work going into this at the moment. There will be some
changes to 2.4 before a release, As I understand it from Eric Pugh, the
pipelineData issue and upgrading the MerlinComponentService will be dealt
with. The pipeline changes will impact how the review service puts the
validationResults into RunData and consequently how your application should
get them out again. The AvalonComponentService should be retained so the
changes to the MerlinComponentService are unlikely to impact you unless you
are writing components for the MerlinComponentService itself.

I am using 2.4 for my own projects.

I hope that helps.

Peter 



-----Original Message-----
From: ANSI Webmaster [mailto:[EMAIL PROTECTED] 
Sent: 25 June 2004 10:05
To: 'Turbine Users List'
Subject: RE: Fulcrum SecuritySet error

Heureka!

I finally got the zebra-antelope app to run... And seeing it uses the
turbine 2.4 pipeline, and review stuff, I wanted to know if I should build
my website on this stuff - instead of the old 2.3... I don't want to be in a
situation where I'm building up the whole stuff and then finding out the 2.4
stuff in there isn't the future...

So should I use this?

Anyhow, it looks great otherwise and works well, you should check it out.
Just a bit of a warning, the help files for antelope are incomplete (3 ways
on 3 different pages, where you have to take the stuff that works)...

/M


-----Original Message-----
From: Jones Michael, Slough [mailto:[EMAIL PROTECTED] 
Sent: 25. juni 2004 10:39
To: Turbine Users List
Subject: RE: Fulcrum SecuritySet error

Hi,
I recently set up the Fulcrum security using the dynamic model using
hibernate for Antelope (a sample app for turbine found at
http://zebra.tigris.org ). 
I am not sure exactly what you are trying to achieve and I am sorry if I
have got the wrong end of the stick, but when you are adding the security
elements you should use the managers. These encapsulate all the hibernate
code for getting them into the database.

However if you are writing a manager you cannot use the securitySet.add()
method directly because it throws a "unimplemented exception" as you stated.
You have to use the methods on the subclass. To get round this I did
something along these lines:

        SecuritySet ss;
        ...     
        if (shouldAdd) {
        if (ss instanceof GroupSet)
                ((GroupSet) ss).add((Group) e1);
                if (ss instanceof RoleSet) 
                        ((RoleSet) ss).add((Role) e1);            
                if (ss instanceof PermissionSet)
                ((PermissionSet) ss).add((Permission) e1);
      }

If you have a look at Antelope though if will give you a lot more info on
how I set it all up.
Cheers
Mike


-----Original Message-----
From: Lester Ward [mailto:[EMAIL PROTECTED] 
Sent: 24 June 2004 18:31
To: Turbine User Mailing List (E-mail)
Subject: Fulcrum SecuritySet error

I'm using Fulcrum's security component to use Hibernate with Turbine 2.3.
Using the dynamic security model, I'm running into an issue. I'm subclassing
the security objects from Fulcrum such as
org.apache.fulcrum.security.model.dynamic.entity.DynamicGroup. I have code
that looks like this:

      Set roles = a_Group.getRolesAsSet();
      Role role = (Role)m_RolesByName.get(k_RoleUser);
      roles.add(role);

I get this exception:

java.lang.RuntimeException: not implemented
        at
org.apache.fulcrum.security.util.SecuritySet.add(SecuritySet.java:257)
        at net.sf.hibernate.collection.Set.add(Set.java:156)
        at com.tagaudit.humpback.Humpback.attachRoles(Humpback.java:424)
        at com.tagaudit.humpback.Humpback.translateUser(Humpback.java:366)
        at com.tagaudit.humpback.Humpback.walkUsers(Humpback.java:316)
        at com.tagaudit.humpback.Humpback.run(Humpback.java:111)
        at com.tagaudit.humpback.Humpback.main(Humpback.java:87)

This appears to be caused be an odd combination of things:

1) The SecuritySet.add(Object) method throws an unimplemented exception,
apparently because it's subclasses have typed add() method that the author
wants to be called instead of the generic add(Object) method.

2) In the code, my roles object is a net.sf.hibernate.collection.Set object.
This object is evidently a proxy wrapped around another Set, in this case an
org.apache.fulcrum.security.util.RoleSet.

3) The RoleSet object has an add(Role) method and is a subclass of
SecuritySet.

4) Hibernate's Set.add method looks like this:

        public boolean add(Object value)
        {
                write();
                return set.add(value);
        }

5) Since the Hibernate add takes an object, when it calls set.add(), it ends
up invoking the add(Object) call of the RoleSet object. Since this object
doesn't have one of those, it invokes the add(Object) method of its
superclass, which throws the unimplemented exception (see item 1 above).

Now, as near as I can tell, this means I'm pretty much hosed. I have to
alter either Fulcrum's set objects, Hibernate's set objects or both to fix
this problem.

Anyone have any advice for solving this?

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Scanned for viruses by MessageLabs



Scanned for viruses by MessageLabs. The integrity and security of this
message cannot be guaranteed. This email is intended for the named recipient
only, and may contain confidential information and proprietary material. Any
unauthorised use or disclosure is prohibited.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Scanned for viruses by MessageLabs



Scanned for viruses by MessageLabs. The integrity and security of this message cannot 
be guaranteed. This email is intended for the named recipient only, and may contain 
confidential information and proprietary material. Any unauthorised use or disclosure 
is prohibited.

Reply via email to