hi mat
On 3/21/12 6:06 PM, Mat Lowery wrote:
According to the JCR 2.0 API documentation of
AccessControlManager#setPolicy(String, AccessControlPolicy):
"A VersionException will be thrown either immediately, on dispatch or on
persists, if the node at absPath is read-only due to a checked-in node.
Implementations may differ on when this validation is performed."
Doesn't this assume too much about the implementation?
i don't think so. it's just a matter of when the VersionException
is thrown and a given JCR implementation may not be able to determine
the check-out status of the node at absPath upon the transient
modification.
in the current reference implementation this is possible and
thus any transient modification (setPolicy or addNode) on a
checked-in node will immediately fail.
Using Jackrabbit
2.0.4 defaults, rep:policy's onParentVersion is IGNORE so it technically
doesn't require a checkout but the implementation actually does make
sure it is checked out in ProtectedItemModifier.
well, the onParentVersion setting is another story IMO as the
API contract only refers to the checked-out status of the node
at absPath, which in this case is versionable and unmodifiable
as long as it is not checked-out.
I'd like to make an ACL modification without creating a new version.
Any ideas?
as far as i know this is not possible in JCR.
kind regards
angela