I still can not seem to add a file. I went through the webdav interface and I created a 'folder' called bar. Then, I tried to programmatically add a file to that folder. I am getting nothing.
```java // get the path for where to add the file. // We want to put it in the `bar` folder Node root; root = session.getRootNode(); root = root.getNode("bar"); System.out.print("Adding binary "); Calendar rightNow = Calendar.getInstance(); // Add a node for the file // It fails here Node child = root.addNode("grade.png"); // Set the property for the node. child.setProperty(JcrConstants.JCR_DATA, root.getSession().getValueFactory().createBinary(new FileInputStream("grade.png"))); child.setProperty(JcrConstants.JCR_MIMETYPE, "image/png"); child.setProperty(JcrConstants.JCR_LASTMODIFIED, rightNow); session.save(); ``` ``` javax.jcr.nodetype.ConstraintViolationException: No child node definition for grade.png found in node /bar <snip> at org.apache.jackrabbit.rmi.server.ServerObject.getRepositoryException(ServerObject.java:109) at org.apache.jackrabbit.rmi.client.ClientNode.addNode(ClientNode.java:95) at gov.ca.brea.jackrabbit.FifthHop.main(FifthHop.java:74) On Thu, Aug 26, 2021 at 01:04:35AM +0200, Jakub Kaniewski wrote: > For this you use ValueFactory > > Example > node.setProperty(JcrConstants.JCR_DATA,node.getSession().getValueFactory().createBinary > > <https://www.tabnine.com/code/java/methods/javax.jcr.ValueFactory/createBinary>(new > FileInputStream(“/tmp/test.jpg))); > > > — > Jakub Kaniewski | 666 831 500 | jakub.kaniew...@gmail.com > > > > > > On 26 Aug 2021, at 00:59, Brian E. Lavender <br...@brie.com> wrote: > > > > How is it I add a binary to a Node? > > > > I see the following method. > > Property setProperty(java.lang.String name, Binary value) > > > > I see that Binary is an interface, yet I am not sure how to create a > > Binary from a File that I open. > > > > Or, stated another way, say I want to add a jpg image from my disk to > > a node. Would I use this setProperty method? How would I do it? > > > > Brian > > -- > > Brian Lavender > > http://www.brie.com/brian/ > > > > "There are two ways of constructing a software design. One way is to > > make it so simple that there are obviously no deficiencies. And the other > > way is to make it so complicated that there are no obvious deficiencies." > > > > Professor C. A. R. Hoare > > The 1980 Turing award lecture > -- Brian Lavender http://www.brie.com/brian/ "There are two ways of constructing a software design. One way is to make it so simple that there are obviously no deficiencies. And the other way is to make it so complicated that there are no obvious deficiencies." Professor C. A. R. Hoare The 1980 Turing award lecture