[
https://issues.apache.org/jira/browse/SLING-1627?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Zach A. Thomas updated SLING-1627:
----------------------------------
Attachment: SLING-1627.patch
The attached patch file includes a pair of unit tests for DefaultContentCreator
and two small changes to two of the createProperty methods.
It could be that I'm misunderstanding the intent of the code, but at least for
my project, it works better if createProperty respects the :replace=true flag.
> import operation does not respect :replace=true for properties
> --------------------------------------------------------------
>
> Key: SLING-1627
> URL: https://issues.apache.org/jira/browse/SLING-1627
> Project: Sling
> Issue Type: Bug
> Components: JCR
> Reporter: Zach A. Thomas
> Attachments: SLING-1627.patch
>
>
> If I want to import some JSON and then update it with a subsequent POST
> (using the :replace=true flag), the nodes are updated, but not the properties.
> curl -u admin:admin -F":operation=import" -F":contentType=json"
> -F':content={"columns": {"one":"value"}, "layout": "dev"}'
> http://localhost:8080/dashboard
> If I do a subsequent POST with the :replace parameter:
> curl -u admin:admin -F":operation=import" -F":contentType=json"
> -F':content={"columns": {"one":"love"}, "layout": "dev"}' -F":replace=true"
> http://localhost:8080/dashboard
> The columns object is updated, but the layout property is not. I tracked this
> down to Sling's DefaultContentCreator, whose createProperty method expressly
> won't overwrite a property if it already exists.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.