Hi,
I'm attempting to upgrade Sling to use the current Jackrabbit 2.1.x release
and ran into a fairly significant snag.

In r950440 (as part of JCR-2573),
org.apache.jackrabbit.core.security.AccessManager.canRead() was changed from
a single argument (Path) method to a two-argument method (Path, ItemId). In
o.a.s.jcr.jackrabbit.server.impl.security.PluggableDefaultAccessManager, we
override this method (from o.a.j.core.security.DefaultAccessManager) and
delegate to an implementation of the AccessManagerPlugin if available.

The obviously easy thing to do is to modify AccessManagerPlugin to have a
two-argument canRead() method, but this will both break any existing
implementations of AccessManagerPlugin *and* will require that
o.a.j.core.idbe exported by the jackrabbit-server bundle (there are
probably other
downsides to making this change - these are just the first two I can think
of). On the other hand, I don't think it is quite tenable for us to be stuck
at Jackrabbit 2.1.1 forever, so we may just need to bite this bullet, do a
major version change and roll with it. However, in this case, I'd be
inclined to wait until Jackrabbit 2.2.0 is released.

Changeset is here: http://codereview.appspot.com/3490041

WDYT?

Justin

P.S. Has anyone gotten reviews.apache.org to work?

Reply via email to