Author: justin
Date: Thu Jan 28 21:08:46 2010
New Revision: 904267

URL: http://svn.apache.org/viewvc?rev=904267&view=rev
Log:
SLING-1333 - applying patch

Modified:
    
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingPropertyValueHandler.java

Modified: 
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingPropertyValueHandler.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingPropertyValueHandler.java?rev=904267&r1=904266&r2=904267&view=diff
==============================================================================
--- 
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingPropertyValueHandler.java
 (original)
+++ 
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/helper/SlingPropertyValueHandler.java
 Thu Jan 28 21:08:46 2010
@@ -240,8 +240,24 @@
                         }
                         return;
                     }
-                    // fall back to default behaviour
+                } else if (type == PropertyType.REFERENCE) {
+                    boolean valueIsNodePath = false;
+                    try {
+                        if (parent.getSession().itemExists(values[0])) {
+                            valueIsNodePath = true;
+                        }
+                    } catch (RepositoryException e) {}
+                    if (valueIsNodePath) {
+                        Property createdProp = 
parent.setProperty(prop.getName(), (Node) 
parent.getSession().getItem(values[0]));
+
+                        
changes.add(Modification.onModified(createdProp.getPath()));
+
+                        return;
+                    }
                 }
+
+                // fall back to default behaviour
+
                 final Property p;
                 if ( type == PropertyType.UNDEFINED ) {
                     p = parent.setProperty(prop.getName(), values[0]);


Reply via email to