[
https://issues.apache.org/jira/browse/SLING-3540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15162970#comment-15162970
]
Konrad Windszus commented on SLING-3540:
----------------------------------------
Just to clarify here how it was implemented.
It uses a POST to create the intermediate paths. That means for {{usePut=true}}
to work you need
a) a WebDAV implementation which takes care of putting the resource (and
returning a 409 in case of a conflict, e.g. if the parent is not yet there)
listening at {{sling.url}}, see
http://www.webdav.org/specs/rfc4918.html#put-resources.
b) the Sling POST servlet which is used to create the intermediate paths
listening at {{sling.url}} as well. WebDAV cannot be used for that as that does
not standardize how a POST on resources should be implemented.
> maven-sling-plugin with usePut = true does not create intermediary folders
> --------------------------------------------------------------------------
>
> Key: SLING-3540
> URL: https://issues.apache.org/jira/browse/SLING-3540
> Project: Sling
> Issue Type: Bug
> Components: Maven Plugins and Archetypes
> Affects Versions: Maven Sling Plugin 2.1.0
> Reporter: Robert Munteanu
> Assignee: Robert Munteanu
> Fix For: Maven Sling Plugin 2.1.2
>
>
> {code}[INFO] Installing Bundle
> com.example.jcrbundle(/home/rmuntean/tmp/jcrbundle/target/jcrbundle-1.0-SNAPSHOT.jar)
> to http://localhost:8080/libs/sling/install via PUT
> [ERROR] Installation failed, cause: Conflict{code}
> The reason is that the default Sling launchpad does not have a
> /libs/sling/install directory structure out of the box. The workaround is to
> create it, e.g. with curl
> {code}
> curl -u admin:admin -X MKCOL http://localhost:8080/libs
> curl -u admin:admin -X MKCOL http://localhost:8080/libs/sling
> curl -u admin:admin -X MKCOL http://localhost:8080/libs/sling/install
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)