Show Menu
TEMAS×

Lista de formularios en una página web mediante API

AEM Forms proporciona una API de búsqueda basada en REST que los desarrolladores web pueden utilizar para consultar y recuperar un conjunto de formularios que cumplen los criterios de búsqueda. Las API se pueden utilizar para buscar formularios basados en distintos filtros. El objeto response contiene atributos de formulario, propiedades y puntos finales de procesamiento de los formularios.
Para buscar formularios con la API de REST, envíe una solicitud GET al servidor en https://[server]:[port]/libs/fd/fm/content/manage.json los parámetros de consulta que se describen a continuación.

Query parameters

Nombre del atributo Descripción
func
Especifica la función que se va a llamar. Para buscar formularios, establezca el valor del func atributo en searchForms .
Por ejemplo, URLParameterBuilder entityBuilder=new URLParameterBuilder (); entityBuilder.add("func", "searchForms");
Nota: Este parámetro es obligatorio.
appPath
Especifica la ruta de la aplicación para buscar formularios. De forma predeterminada, el atributo appPath busca en todas las aplicaciones disponibles en el nivel de nodo raíz.
Puede especificar varias rutas de aplicación en una sola consulta de búsqueda. Separe las distintas rutas con el carácter de barra vertical (|).
cutPoints
Especifica las propiedades que se van a recuperar con los recursos. Puede utilizar el asterisco (*) para recuperar todas las propiedades a la vez. Utilice el operador de barra vertical (|) para especificar varias propiedades.
Por ejemplo, cutPoints=propertyName1|propertyName2|propertyName3
Nota :
  • Siempre se buscan propiedades como id, path y name.
  • Cada recurso tiene un conjunto diferente de propiedades. Las propiedades como formUrl, pdfUrl y guideUrl no dependen del atributo cutpoints. Estas propiedades dependen del tipo de recurso y se recuperan en consecuencia.
relation Especifica los recursos relacionados que se van a recuperar junto con los resultados de la búsqueda. Puede elegir una de las siguientes opciones para recuperar recursos relacionados:
  • NO_RELATION : No busque recursos relacionados.
  • INMEDIATO : Recoge recursos directamente relacionados con los resultados de búsqueda.
  • ALL : Buscar directa e indirectamente recursos relacionados.
maxSize Especifica el número máximo de formularios que se van a recuperar.
desplazamiento Especifica el número de formularios que se omitirán desde el inicio.
returnCount Especifica si se devuelven o no los resultados de búsqueda que coinciden con los criterios dados.
sentencias
Especifica la lista de instrucciones. Las consultas se ejecutan en la lista de instrucciones especificadas en el formato JSON.
Por ejemplo,
JSONArray statementArray=new JSONArray(); JSONObject statement=new JSONObject(); statement.put("name", "title"); statement.put("value", "SimpleSurveyAF"); statement.put("operator", "EQ"); statementArray.put(statement);
En el ejemplo anterior,
  • name : especifica el nombre de la propiedad que se va a buscar.
  • value : especifica el valor de la propiedad que se va a buscar.
  • operador : especifica el operador que se aplicará durante la búsqueda. Se admiten los siguientes operadores:
    • EQ: igual a
    • NEQ - No es igual a
    • GT - Mayor que
    • LT - Menor que
    • GTEQ: mayor o igual que
    • LTEQ: menor o igual que
    • CONTIENE: A contiene B si B es parte de A
    • FULLTEXT: búsqueda de texto completo
    • INTERRUPTOR DE ESTANQUEIDAD: A empieza por B si B es la parte inicial de A
    • INTERRUPTOR DE ENCENDIDO: A termina con B si B es la parte final de A
    • LIKE - Implementa el operador LIKE
    • AND - Combinar varias afirmaciones
    Nota: Los operadores GT, LT, GTEQ y LTEQ son aplicables a propiedades de tipo lineal como LONG, DOUBLE y DATE.
pedidos
Especifica los criterios de pedido para los resultados de búsqueda. Los criterios se definen en el formato JSON. Puede ordenar los resultados de búsqueda en más de un campo. Los resultados se ordenan en el orden en que aparecen los campos en la consulta.
Por ejemplo,
Para recuperar los resultados de consulta ordenados por propiedad title en orden ascendente, agregue el siguiente parámetro:
JSONArray orderingsArray=new JSONArray(); JSONObject orderings=new JSONObject(); orderings.put("name", "title"); orderings.put("criteria", "ASC"); orderingsArray.put(orderings); entityBuilder.add("orderings", orderingsArray.toString());
  • name : Especifica el nombre de la propiedad que se va a utilizar para ordenar los resultados de búsqueda.
  • criterios : Especifica el orden de los resultados. El atributo order acepta los siguientes valores:
    • ASC: utilice ASC para organizar los resultados en orden ascendente.
    • DES: utilice DES para organizar los resultados en orden descendente.
includeXdp Especifica si se recupera el contenido binario o no. El includeXdp atributo es aplicable a recursos de tipo FORM , PDFFORM y PRINTFORM .
assetType Especifica los tipos de recursos que se van a recuperar de todos los recursos publicados. Utilice el operador de barra vertical (|) para especificar varios tipos de recursos. Los tipos de recursos válidos son FORM, PDFFORM, PRINTFORM, RESOURCE y GUIDE.

Solicitud de muestra

func : searchForms
appPath : /content/dam/formsanddocuments/MyApplication23
cutPoints : title|description|author|status|creationDate|lastModifiedDate|activationDate|expiryDate|tags|allowedRenderFormat|formmodel
relation : NO_RELATION
includeXdp : false
maxSize : 10
offset : 0
returnCount : true
statements: [{"name":"name","value":"*Claim.xdp","operator":"CONTAINS"},
                {"name":"","value":"Expense","operator":"FULLTEXT"},
                {"name":"description","value":"ABCD*","operator":"CONTAINS"},
                {"name":"status","value":"false","operator":"EQ"},
                {"name":"lastModifiedDate","value":"01/09/2013","operator":"GTEQ"},
                {"name":"lastModifiedDate","value":"01/18/2013","operator":"LTEQ"}]
orderings:[{"name" :“lastModifiedDate“:”order”:”ASC”}]

Respuesta de muestra

[
{"resultCount":2},
    {"assetType":"FORM","name":"ExpenseClaim.xdp","id":"509fa2d5-e3c9-407b-b8dc-fa0ba08eb0ce",
       "path":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp",
       "title":"Expense Report","description":"ABCDEFGIJK","author":"Frank Bowman",
       "tags":[],"formUrl":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp/jcr:content",
       "pdfUrl":"/content/dam/formsanddocuments/MyApplication23/1.0/ExpenseClaim.xdp/jcr:content?type=pdf",
       "references":[],"images":[{"assetType":"resource","name":"Image.gif","id":"5477a127-8bbf-4cec-8f81-2689e5cb4a15",
       "path":"/content/dam/formsanddocuments/MyApplication23/1.0/Image.gif","resourceSize":0}],
       "status":false,"creationDate":1358429845623,"lastModifiedDate":1358429846771},
{"assetType":"FORM","name":"ExpenseClaim.xdp","id":"4312239b-b666-4d36-95bc-641b3a39ddd4",
       "path":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp",
       "title":"Expense Report","description":"ABCDefghijklm","author":"Frank Bowman",
       "tags":[],"formUrl":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp/jcr:content",
       "pdfUrl":"/content/dam/formsanddocuments/MyApplication23/ExpenseClaim.xdp/jcr:content?type=pdf",
       "references":[],"images":[{"assetType":"resource","name":"Image.gif","id":"118a2e3f-7097-4d8c-85d1-651306de284a",
       "path":"/content/dam/formsanddocuments/MyApplication23/Image.gif","resourceSize":0}],"status":false,
       "creationDate":1358429856690,"lastModifiedDate":1358430109023}
]