Vous consultez actuellement l'aide de la version:

AEM Forms fournit une API de recherche basée sur REST que les développeurs Web peuvent utiliser pour interroger et récupérer un jeu de formulaires qui répond à leurs critères de recherche. Vous pouvez utiliser des API pour effectuer des recherches dans des formulaires en fonction de divers filtres. L’objet de réponse contient des attributs et propriétés de formulaire, ainsi que des points de fin de rendu.

Pour effectuer une recherche dans les formulaires à l’aide de l’API REST, envoyez une requête GET au serveur à l’adresse https://[serveur]:[port]/libs/fd/fm/content/manage.json avec les paramètres de requête décrits ci-dessous.

Paramètres de requête

Nom de l’attribut
Description
func

Indique la fonction à appeler. Pour effectuer une recherche dans les formulaires, définissez la valeur de l’attribut func sur searchForms.

Par exemple,
URLParameterBuilder entityBuilder=new URLParameterBuilder ();
entityBuilder.add("func", "searchForms");

Remarque : ce paramètre est obligatoire.

appPath

Spécifie le chemin d’application pour la recherche de formulaires. Par défaut, l’attribut appPath recherche toutes les applications disponibles au niveau du nœud racine.

Vous pouvez spécifier plusieurs chemins d’application dans une seule requête de recherche. Plusieurs chemins distincts avec une barre verticale (|).  

cutPoints

Indique les propriétés à récupérer avec les ressources. Vous pouvez utiliser l’astérisque (*) pour récupérer toutes les propriétés simultanément. Utilisez la barre verticale (|) pour indiquer plusieurs propriétés.  

Par exemple, cutPoints=propertyName1|propertyName2|propertyName3

Remarque : 

  • Les propriétés telles que l’ID, le chemin et le nom sont toujours récupérées.
  • Chaque ressource possède un ensemble de propriétés différent. Les propriétés telles que formUrl, pdfUrl et guideUrl ne dépendent pas de l’attribut cutPoints. Elles dépendent du type de ressource et sont récupérées en conséquence.  
relation
Indique les ressources connexes à récupérer avec les résultats de la recherche. Vous pouvez sélectionner l’une des options suivantes pour récupérer les ressources connexes :
  • NO_RELATION : ne pas récupérer les actifs connexes.
  • IMMEDIATE : récupérer les ressources liées directement aux résultats de la recherche.
  • ALL : récupérer toutes les ressources liées (directement et indirectement).
maxSize Indique le nombre maximal de formulaires à récupérer.
offset Indique le nombre de formulaires à ignorer à partir du début.
returnCount Indique s’il faut renvoyer ou non les résultats de recherche correspondant aux critères spécifiés. 
statements

Indique la liste d’instructions. Les requêtes sont des exécutions sur la liste des instructions spécifiées au format JSON. 

Par exemple :

JSONArray statementArray=new JSONArray() ;
JSONObject statement=new JSONObject() ;
statement.put("name", "title") ;
statement.put("value", "SimpleSurveyAF") ;
statement.put("operator", "EQ") ; statementArray.put(statement) ;

Dans l’exemple ci-dessus, 

  • name : indique le nom de la propriété à rechercher.
  • value : indique la valeur de la propriété à rechercher.
  • operator : indique l’opérateur à appliquer au cours de la recherche. Les opérateurs ci-dessous sont pris en charge :
    • EQ – Est égal à 
    • NEQ – Est différent de 
    • GT – Est supérieur à
    • LT – Est inférieur à
    • GTEQ – Est supérieur ou égal à
    • LTEQ – Est inférieur ou égal à
    • CONTAINS – A contient B si B fait partie de A
    • FULLTEXT – Recherche de texte intégral
    • STARTSWITH – A commence par B si B est le début de A
    • ENDSWITH – A se termine par B si B est la fin de A
    • LIKE – Implémente l’opérateur LIKE
    • AND – Combine plusieurs instructions

    Remarque : les opérateurs GT, LT, GTEQ et LTEQ s’appliquent aux propriétés de type linéaire, telles que LONG, DOUBLE et DATE.

orderings

Indique les critères d’ordre relatifs aux résultats de la recherche. Les critères sont définis au format JSON. Vous pouvez classer les résultats de la recherche selon plusieurs champs. Les résultats sont classés selon l’ordre d’apparition des champs dans la requête.

Par exemple :

Pour récupérer les résultats de la requête selon la propriété de titre dans l’ordre croissant, ajoutez le paramètre suivant :  

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 : indique le nom de la propriété à utiliser pour classer les résultats de la recherche.
  • criteria : indique l’ordre des résultats. L’attribut d’ordre accepte les valeurs suivantes :
    • ASC – Utilisez l’attribut ASC pour classer les résultats dans l’ordre croissant.
    • DES – Utilisez l’attribut DES pour classer les résultats dans l’ordre décroissant.
includeXdp Indique si le contenu binaire doit être récupéré ou non. L’attribut includeXdp s’applique aux ressources de type FORM, PDFFORM et PRINTFORM.
assetType Spécifie les types de ressource à récupérer de toutes les ressources publiées. Utilisez la barre verticale (|) pour indiquer plusieurs types de ressource. Les types de ressource valides sont FORM, PDFFORM, PRINTFORM, RESOURCE et GUIDE.

Exemple de demande

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”}]

Exemple de réponse

[
{"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}
]

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne