Creazione form a seconda del type

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

Creazione form a seconda del type

Se volessi  creare un  webscript che per ogni type  mi  ritorna un form,  questo form  avrà "tot" campi  per le "tot" properties.
Guardando le api  ho notato:

/api/classes/{className}
/api/classes/{classname}/association/{assocname}
/api/classes/{classname}/associations
/api/classes/{classname}/properties
/api/classes/{classname}/property/{propname}
/api/classes/{classname}/subclasses
usando queste  api  posso  facilemente trovarmi tutte le properties e  crearmi  dinamicamente un form  con tutti i  campi.

Ho   notato  che sono  presenti anche queste api :

GET /alfresco/service/api/forms/picker/{type}/children
etc etc
Usando queste api e  quindi  sostituendo a {type}  il  tipo,  avro come risposta in JSON tutti i campi del form?

Il mio obiettivo è far si  che selezionando un TIPO  verrà visualizzato un form con i  campi  (quindi properties) del tipo di documento,
grazie
1 Reply
openpj
Moderator
Moderator

Re: Creazione form a seconda del type

Non mi sembra che queste funzionalità che hai elencato ti diano la lista dei metadati, ma direttamente le proprietà del nodo con il valore.

Per questo tipo di implementazioni ti suggerisco di utilizzare il DicionaryService che è proprio il servizio predisposto a questo. Tramite questo servizio è possibile interrogare il modello di Alfresco per poter cercare dinamicamente i type con i relativi metadati definiti nel modello.

L'unico problema è che questo servizio non è esposto tramite la JavaScript API di Alfresco, che quindi dovrà essere esteso opportunamente per poter avere a disposizione nel motore JavaScript di Rhino anche un oggetto custom per il dictionaryService.

Per fare questo ti suggerisco di dare un'occhiata a come sono stati sviluppati i servizi JavaScript esposti all'interno di Alfresco nel file script-services-context.xml e poi puoi leggere il dettaglio di come possono essere estesi in questa pagina del wiki:
http://wiki.alfresco.com/wiki/3.4_JavaScript_API#Adding_Custom_Script_APIs

Spero ti sia di aiuto.