[
https://issues.apache.org/jira/browse/SLING-2502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Parvulescu updated SLING-2502:
-----------------------------------
Attachment: SLING-2502.patch
I'm taking a stab at this: I'm introducing a new set that only contains the new
properties.
I'm assuming that the existing properties don't really need to be escaped
again, as they passed the check before.
See also [0]:
{quote}
Once the node exists, its name just needs to be passed around, but no escaping
should happen for accessing the node, since it will already be in the right form
{quote}
This will fix a part of the problem: it handles updating properties that
contain ":" like jcr:title, jcr:lastModified and friends.
It doesn't however, handle adding properties that fall into this category.
Minor issue:
Not sure yet why the #clear() method re-initializes the changedProperties set:
{code}
this.changedProperties.addAll(this.cache.keySet());
{code}
Attaching proposed patch.
[0] http://wiki.apache.org/jackrabbit/EncodingAndEscaping
> Incorrect escaping of property names in JcrModifiablePropertyMap on save
> ------------------------------------------------------------------------
>
> Key: SLING-2502
> URL: https://issues.apache.org/jira/browse/SLING-2502
> Project: Sling
> Issue Type: Bug
> Components: JCR
> Affects Versions: JCR Resource 2.1.0
> Reporter: Alex Parvulescu
> Attachments: SLING-2502.patch
>
>
> This follows SLING-2425 where there was a change in the way JCR properties
> are escaped before being persited.
> The regression happens for properties that have ":" in the name.
> For example: jcr:title after the #save() call will turn into jcr%3Atitle so
> the node will end up with a brand new property, instead of having the old
> jcr:title updated.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira