You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2017/04/03 18:09:00 UTC
svn commit: r1790028 -
/sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java
Author: cziegeler
Date: Mon Apr 3 18:09:00 2017
New Revision: 1790028
URL: http://svn.apache.org/viewvc?rev=1790028&view=rev
Log:
SLING-6723 : Make dependency to javax.jcr, jcr.contentloader and jcr.api optional
Modified:
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java
Modified: sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java?rev=1790028&r1=1790027&r2=1790028&view=diff
==============================================================================
--- sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java (original)
+++ sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingFileUploadHandler.java Mon Apr 3 18:09:00 2017
@@ -576,7 +576,13 @@ public class SlingFileUploadHandler {
throws PersistenceException {
Map<String, Object> properties = null;
if ( typeHint != null ) {
- properties = Collections.singletonMap(ResourceResolver.PROPERTY_RESOURCE_TYPE, (Object)typeHint);
+ // sling resource type not allowed for nt:file nor nt:resource
+ if ( !jcrSupport.isNode(parent)
+ || (!JcrConstants.NT_FILE.equals(typeHint) && !JcrConstants.NT_RESOURCE.equals(typeHint)) ) {
+ properties = Collections.singletonMap(ResourceResolver.PROPERTY_RESOURCE_TYPE, (Object)typeHint);
+ } else {
+ properties = Collections.singletonMap(JcrConstants.JCR_PRIMARYTYPE, (Object)typeHint);
+ }
}
final Resource result = parent.getResourceResolver().create(parent, name, properties);
changes.add(Modification.onCreated(result.getPath()));