Hi Joe,
> -> http -j -b localhost:8080/test jcr\\:primaryType=oak:Unstructured foo=abc
> bar:=123
While I'm not completely sure of the whole type validation machinery
(or auto-generation) etc. But doing this:
```
diff --git
a/oak-http/src/main/java/org/apache/jackrabbit/oak/http/OakServlet.java
b/oak-http/src/main/java/org/apache/jackrabbit/oak/http/OakServlet.java
index c6bcd3b..5947980 100644
--- a/oak-http/src/main/java/org/apache/jackrabbit/oak/http/OakServlet.java
+++ b/oak-http/src/main/java/org/apache/jackrabbit/oak/http/OakServlet.java
@@ -33,12 +33,15 @@ import com.fasterxml.jackson.core.JsonFactory;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.smile.SmileFactory;
+import org.apache.jackrabbit.JcrConstants;
import org.apache.jackrabbit.oak.api.CommitFailedException;
import org.apache.jackrabbit.oak.api.ContentRepository;
import org.apache.jackrabbit.oak.api.ContentSession;
import org.apache.jackrabbit.oak.api.Root;
import org.apache.jackrabbit.oak.api.Tree;
+import org.apache.jackrabbit.oak.api.Type;
import org.apache.jackrabbit.oak.commons.PathUtils;
+import org.apache.jackrabbit.oak.plugins.memory.PropertyStates;
import org.apache.jackrabbit.util.Base64;
import org.apache.tika.mime.MediaType;
@@ -192,6 +195,8 @@ public class OakServlet extends HttpServlet {
tree.setProperty(name, value.asDouble());
} else if (value.isBigDecimal()) {
tree.setProperty(name, value.decimalValue());
+ } else if (JcrConstants.JCR_PRIMARYTYPE.equals(name)) {
+ tree.setProperty(name, value.asText(), Type.NAME);
} else {
tree.setProperty(name, value.asText());
}
```
(that is assume jcr:primaryType to always be of type NAME) lets the
stuff through. May be, that's good enough to un-block you (assuming
you're compiling your own oak-run jar to play around)
Thanks,
Vikas