Impersonation in GateIn Portal
by Marek Posolda
Hi all,
We've been requested several times by our users/customers to add
"impersonation" feature.
It may be useful for portal administrator to have possibility to
temporary login as another user without knowing his password. For
example: User /root/ wants to verify that user /mary/ really doesn't
have permission to see page X or portlet Y on page Z.
I've added specification page here
https://community.jboss.org/wiki/ImpersonationInGateInPortal . Feel free
to provide feedback here or in comments of specification.
Have a nice weekend!
Marek
10 years, 9 months
Picket Link and Org Service TCK alignment
by Julien Viet
Hi,
recently we worked on making the eXo Core OrganizationService TCK implemented for the picket link implementation. (I think it was not implemented because the TCK came after the PL implementation and then nobody was aware that it was kind of existing, anyway better late than never…)
We came through a few conflicting behavior between what the TCK defines and the original PL implementation testsuite:
1/ testRemoveGroup(org.exoplatform.services.tck.organization.TestGroupHandler)
conflict between TCK and PL test when removing a group having at least 1 child
+ TCK assumes an exception is thrown
+ PL assumes this group will be removed and its children will be removed too
2/ testFindUserProfileByName(org.exoplatform.services.tck.organization.TestUserProfileHandler): Expected: <null> but was: org.exoplatform.services.organization.impl.UserProfileImpl@40773f4b
conflict between TCK and PL test when a non existing user profile of existing user is searched via find:
+ TCK suppose null is returned
+ PL suppose an empty profile is returned
3/
- testFindUsersByQuery(org.exoplatform.services.tck.organization.TestUserHandler): expected:<1> but was:<0>
- testFindUsers(org.exoplatform.services.tck.organization.TestUserHandler): expected:<1> but was:<0>
In method: UserHandler#findUsersByQuery(Query query)
TCK suppose that case sensitivity does not matter in a search user but PicketLink implementation is case sensitive
somehow we need to make this consistent.
Our take is that we should align Picket Link with the TCK.
Comments are open.
cheers
Julien
11 years, 1 month
Intellij license
by Julien Viet
It should expire next week.
I asked for a one year renewal.
I'll keep you informed.
Julien
11 years, 2 months
RestServlet & Request End
by Nick Scavelli
As per https://issues.jboss.org/browse/GTNPORTAL-3257, when a failure
occurs after the REST request handler completes (i.e. JCR commit), the
response is still sent successfully to the client.
Wanted to get some feedback on this. From my perspective this is
something that should probably be handled by the RestServlet in eXo WS.
I don't think there's anything the actual REST service should do to
handle these scenarios. If we are in agreement I can create a JIRA with
eXo WS.
- Nick
11 years, 2 months
GateIn 4.0.0 update
by Julien Viet
Hi,
it's been a long time I haven't given news about 4.0.0 so here are the progress that have been made since the last update (31st of May with portlet controller integration) :
1/ Parallel portlet rendering
The page controller has been improved to work in a asynchronous manner and provide parallel portlet rendering. When a page is rendered:
- the controller sends the beginning of the page to the client that receives the response quickly
- the portlets of the page are rendered with a java executor, when all portlets are rendered the rest of the page is sent to the client
This allow to reduce the rendering time of a page and provides a quicker response to the client, in particular if the portlets declares assets that would allow to send headers soon to the client.
You can see a demo here : http://gatein-4.0.0-snapshot.acceptance4.exoplatform.org/portal/demo2 with three portlets on the same page that perform a Thread.sleep of 1500ms but the page is rendered much faster than 4500ms.
2/ MongoDB support
In the early GateIn 4.0.0 days the initial focus was to provide a Ram implementation of the persistence for unit testing reason.
In the past few weeks I dedicated some of my time to work on a MongoDB implementation as document databases are an excellent fit for the portal persistence model. Here are the interesting points:
- page layouts are stored in a single document which means that a page is fully loaded with a single database hit
- low coupling between documents allow to easily persist the mixin parts of the model
The current 4.0.0 branch is able to work with a MongoDB installation.
3/ GateIn objects 2.0 XML progress
More descriptors have been migrated to 2.0 providing simpler and better XML:
- it is possible to define a page for the root navigation node
- some XML tag have been unified : label and title -> display-name
- windows are now uniquely named in a page layout
4/ organization integration
The organization and related services have been merged from current GateIn 3.x master. In particular the work on the SSO integration with Twitter/FB/Google is also integrated.
The page https://github.com/gatein/gatein-portal/tree/4.0.0/portal is kept up to date and explains how to setup a MongoDB installation.
cheers
Julien
11 years, 2 months