Creazione nuovo nodo via Java API

cancel
Showing results for 
Search instead for 
Did you mean: 
gaspare100
Member II

Creazione nuovo nodo via Java API

Salve,
Sto cercando di creare tramite API un nuovo nodo nel repository, ho usato l'esempio trovato nel wiki: link ma non viene creato alcun contenuto, il nodo è vuoto (d'altronde non usa mai l'argomento text quella funzione…) ho dunque modificato leggermente la funzione in questo modo:

protected NodeRef createContentNode(NodeRef parent, String name, String text) {

      // Create a map to contain the values of the properties of the node

      Map<QName, Serializable> props = new HashMap<QName, Serializable>();
      props.put(ContentModel.PROP_NAME, name);
      props.put(ContentModel.PROP_CONTENT, text);
      // use the node service to create a new node
      NodeRef node = this.nodeService.createNode(
                  parent,
                  ContentModel.ASSOC_CONTAINS,
                  QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, name),
                  ContentModel.TYPE_CONTENT, props).getChildRef();
      return node;
   }

ma il nodo non ha comunque alcun contenuto.
Help!

Gaspare.
2 Replies
davidciamberlan
Alfresco Employee

Re: Creazione nuovo nodo via Java API

Ciao,

per inserire il contenuto puoi usare il contentService dopo aver creato il nodo:

<java>
ContentWriter writer = contentService.getWriter(nodeRef, ContentModel.PROP_CONTENT, true);
writer.putContent(new ByteArrayInputStream(content));
</java>
gaspare100
Member II

Re: Creazione nuovo nodo via Java API

grazie per la risposta!
avevo immaginato fosse questo il modo ed avevo utilizzato questo approccio per testare ma speravo ci fosse un modo più diretto, grazie lo stesso!