There is a message from 8/23 on the Jetspeed User list discussing
integration of Slide.
I still havent got around to trying it out. (Sorry):
There was also an attachment

----------------------------------------------------------------------------
---------------------------------------------

Hello All,

First of all, I want to apologize for the cross posting, but I thought this
was appropriate for both groups.

I thought it'd be a good idea to present some of my work to the community
since I have relied on you quite often to resolve problems using Jakarta
products.  First a little background.  My group has been developing a
Content Management/Presentation System using various Jakarta Technologies
for about a year now.    We use Jetspeed 1.3a2 as our presentation framework
and have integrated pieces of Lucene for search capabilities and Slide
1.0.16 for secure content storage.  Of course, we use Apache and Tomcat to
serve it up!

This email will focus on my work integrating User Administration in Jetspeed
and Slide.  Our software requires both Jetspeed (Turbine) and Slide
authentication, since we have security around the Jetspeed portal and we
have Slide security when linking to our document repository from with the
portal.  I have developed a hook into Slide user administration from within
Jetspeed by extending the JetspeedDBSecurityService and implementing Slide
code.  You can find the src and properties in the attached archive.

Please note the following regarding the attached source:

1)  The com.novuscg.util.slide package contains my wrapper around the Slide
user/group administration code.  You will note that the SlideNode,
SlideUser, and SlideGroup classes represent a strategy pattern that provide
the core code for creating, updating, and deleting users and groups.  Note
that the SlideGroup class which manages Slide groups has been stubbed out
but not fully implemented.  The SlideUser class is fully implemented though.
The SlideClient and it's impl perform the Slide Domain initialization to
retrieve the NamespaceAccessToken.  The Administrator and it's impl do the
actual administration from within a transactional context.

2)  The com.novuscg.portal.services.security.NovusJetspeedDBSecurityService
represents my implementation of the Jetspeed Security Service and implements
the code described in 1) to perform Slide User administration along with the
normal Jetspeed User Administration.  For those of you familiar with
Jetspeed, if you login as admin and create a user through the "User Browser"
portlet, you will be administering a Slide User in addition to the Jetspeed
User.

3)  The source relies on special properties settings.  See the attached
properties file.  Note that you must replace the existing
JetspeedDBSecurityService  with the NovusJetspeedDBSecurityService.

This user administration synchronization is necessary since I'm using Slide
to store documents uploaded through the Jetspeed portal.  The cool thing is
that I'm using the Turbine Upload Service to grab the FileInputStream and I
pass it to Slide through the WebDAV client provided with Slide.  That's
another topic in itself though.

This is important if you want this code to work!  When I first implemented
this code I faced the problem that I couldn't hook directly into the Domain
instantiated by Slide to grab the NamespaceAccessToken using the Jetspeed
portal (The attached src lives in my Jetspeed Web App src directory).  I
solved this problem by forcing Slide class loading from the
CATALINA_HOME/common/lib directory.  In short, you have to do the following
modifications to Slide to get this code to work:

1) Remove slide-kernel.jar, slide-roles.jar, and slide-stores.jar from the
slide.war and slide/lib/ directory.
2) If you have included slide-kernel.jar, slide-roles.jar, and
slide-stores.jar in your Web-App lib directory so you can compile the
attached classes, then you must remove them as well before deploying.
3) Make sure the slide-kernel.jar, slide-roles.jar, and slide-stores.jar
exist in the CATALINA_HOME/common/lib/ directory.
4) There is a conflict between the jta_spec_1_0_1.jar distributed with
Tomcat and the jta.jar distributed with Slide.  Make sure jta_spec_1_0_1.jar
and jdbc2_0-stdext.jar is removed from the CATALINA_HOME/common/lib/
directory.

Voila!  It should work!

If you have any questions or comments, just let me know.  This is typical of
the kind of work we do, so if you need us to implement some stuff, let me
know!

Regards,

Tom Keeney
Novus Consulting Group



--
To unsubscribe, e-mail:   <mailto:jetspeed-user-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:jetspeed-user-help@;jakarta.apache.org>

Reply via email to