[
https://jira.jboss.org/jira/browse/DNA-350?page=com.atlassian.jira.plugin...
]
Brian Carothers updated DNA-350:
--------------------------------
Attachment: DNA-350.patch
Changed all the places where skipProtected is checked to return null (no valid definition
can be obtained) if skipProtected is true instead of continuing and possibly picking up a
residual definition for the protected property. This causes two more test cases in the
TCK NodeTest class to pass, but other failures prevent uncommenting it at this time.
RepoistoryNodeTypeManager.findBest*Definition Returns Wrong
Definition for Protected Items if skipProtected is True.
--------------------------------------------------------------------------------------------------------------------
Key: DNA-350
URL:
https://jira.jboss.org/jira/browse/DNA-350
Project: DNA
Issue Type: Bug
Components: JCR
Affects Versions: 0.3
Reporter: Brian Carothers
Priority: Minor
Attachments: DNA-350.patch
Currently, the RepositoryNodeTypeManager.findBest{Property|ChildNode}Definition methods
have the line:
if (skipProtected && definition.isProtected()) continue;
The problem arises in that SessionCache.NodeEditor uses the existence of a definition as
the indicator that a property can be set (and, respectively, that a child node can be
added). Node types (e.g. nt:unstructured), that have a protected property (e.g.,
jcr:primaryType) and a residual property will return the residual definition for
findBestPropertyDefinition for the property jcr:primaryType if skipProtected = true. In
practice, this means that the protected property will be writable, which violates the spec
and causes two TCK tests that test this condition to fail.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira