Les exemples et les exemples de ce document sont réservés à l’environnement AEM Forms on JEE.
Le service Form Data Integration peut importer des données dans un formulaire PDF et exporter des données d’un formulaire PDF. Les opérations d’import et d’export prennent en charge deux types de PDF forms :
Les données de formulaire peuvent exister dans l’un des formats suivants en fonction du type de formulaire PDF :
Vous pouvez accomplir ces tâches à l’aide du service Form Data Integration :
Pour plus d’informations sur le service Form Data Integration, voir Guide de références des services pour AEM Forms.
Vous pouvez importer des données de formulaire dans des PDF forms interactifs à l’aide du service Form Data Integration . Un formulaire PDF interactif est un document PDF qui contient un ou plusieurs champs permettant de collecter des informations d’un utilisateur ou d’afficher des informations personnalisées. Le service Form Data Integration ne prend pas en charge les calculs de formulaire, la validation ou les scripts.
Pour importer des données dans un formulaire créé dans Designer, vous devez référencer une source de données XML XDP valide. Examinez l’exemple de formulaire de demande de prêt immobilier suivant.
Pour importer des valeurs de données dans ce formulaire, vous devez disposer d’une source de données XML XDP valide correspondant au formulaire. Vous ne pouvez pas utiliser une source de données XML arbitraire pour importer des données dans un formulaire à l’aide du service Form Data Integration. La différence entre une source de données XML arbitraire et une source de données XML XDP est qu’une source de données XDP est conforme à l’architecture Forms XML (XFA). Le code XML suivant représente une source de données XDP XML qui correspond à l’exemple de formulaire de demande de prêt immobilier.
<?xml version="1.0" encoding="UTF-8" ?>
- <xfa:datasets xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
- <xfa:data>
- <data>
- <Layer>
<closeDate>1/26/2007</closeDate>
<lastName>Johnson</lastName>
<firstName>Jerry</firstName>
<mailingAddress>JJohnson@NoMailServer.com</mailingAddress>
<city>New York</city>
<zipCode>00501</zipCode>
<state>NY</state>
<dateBirth>26/08/1973</dateBirth>
<middleInitials>D</middleInitials>
<socialSecurityNumber>(555) 555-5555</socialSecurityNumber>
<phoneNumber>5555550000</phoneNumber>
</Layer>
- <Mortgage>
<mortgageAmount>295000.00</mortgageAmount>
<monthlyMortgagePayment>1724.54</monthlyMortgagePayment>
<purchasePrice>300000</purchasePrice>
<downPayment>5000</downPayment>
<term>25</term>
<interestRate>5.00</interestRate>
</Mortgage>
</data>
</xfa:data>
</xfa:datasets>
Pour plus d’informations sur le service Form Data Integration, voir Guide de références des services pour AEM Forms.
Pour importer des données de formulaire dans un formulaire PDF, procédez comme suit :
Inclure les fichiers de projet
Incluez les fichiers nécessaires dans votre projet de développement. Si vous créez une application cliente à l’aide de Java, incluez les fichiers JAR nécessaires. Si vous utilisez des services web, veillez à inclure les fichiers proxy.
Les fichiers JAR suivants doivent être ajoutés au chemin d’accès aux classes de votre projet :
Pour plus d’informations sur l’emplacement de ces fichiers JAR, voir Inclusion des fichiers de bibliothèque Java AEM Forms.
Création d’un client de service Form Data Integration
Avant de pouvoir importer des données par programmation dans une API cliente de formulaire PDF, vous devez créer un client de service d’intégration de données. Lors de la création d’un client de service, vous définissez les paramètres de connexion requis pour appeler un service. Pour plus d’informations, voir Définition des propriétés de connexion.
Référence à un formulaire PDF
Pour importer des données dans un formulaire PDF, vous devez référencer un formulaire XML créé dans Designer ou un formulaire Acrobat créé dans Acrobat.
Référence à une source de données XML
Pour importer des données de formulaire, vous devez référencer une source de données valide. Pour importer des données dans un formulaire XML XFA créé dans Designer, vous devez utiliser une source de données XML XDP. Si vous référencez un formulaire Acrobat, vous devez utiliser une source de données XFDF. Pour chaque champ dans lequel vous souhaitez importer des données, une valeur doit être spécifiée. Si un élément situé dans la source de données XML ne correspond pas à un champ du formulaire, l’élément est ignoré.
Importation de données dans le formulaire PDF
Après avoir référencé un formulaire PDF et une source de données XML valide, vous pouvez importer les données dans le formulaire PDF.
Enregistrement du formulaire PDF en tant que fichier PDF
Après avoir importé des données dans un formulaire, vous pouvez enregistrer le formulaire au format PDF. Une fois enregistré en tant que fichier PDF, l’utilisateur peut ouvrir le formulaire dans Adobe Reader ou Acrobat et l’afficher avec les données importées.
Voir également
Importation des données de formulaire à l’aide de l’API Java
Importation de données de formulaire à l’aide de l’API de service Web
Inclusion des fichiers de bibliothèque Java d’AEM Forms
Réglage des propriétés de la connexion
Démarrages rapides de l’API du service d’intégration des données de formulaire
Exportation des données de formulaire
Importez des données de formulaire à l’aide de l’API Form Data Integration (Java) :
Inclure les fichiers de projet.
Incluez les fichiers JAR client, tels que adobe-formdataintegration-client.jar, dans le chemin de classe de votre projet Java.
Créez un client de service Form Data Integration.
ServiceClientFactory
qui contient des propriétés de connexion.FormDataIntegrationClient
en utilisant son constructeur et en transmettant l’objet ServiceClientFactory
.Référencez un formulaire PDF.
java.io.FileInputStream
en utilisant son constructeur. Transmettez une valeur string qui spécifie l’emplacement du formulaire PDF.com.adobe.idp.Document
qui stocke le formulaire PDF à l’aide du constructeur com.adobe.idp.Document
. Transmettez au constructeur l’objet java.io.FileInputStream
contenant le formulaire PDF.Référencez une source de données XML.
java.io.FileInputStream
en utilisant son constructeur et transmettez une valeur string qui spécifie l’emplacement du fichier XML qui contient les données à importer dans le formulaire.com.adobe.idp.Document
qui stocke les données de formulaire à l’aide du constructeur com.adobe.idp.Document
. Transmettez l’objet java.io.FileInputStream
contenant les données de formulaire au constructeur.Importez des données dans le formulaire PDF.
Importez des données dans un formulaire PDF en appelant la méthode FormDataIntegrationClient
de l’objet importData
et en transmettant les valeurs suivantes :
com.adobe.idp.Document
qui stocke le formulaire PDF.com.adobe.idp.Document
qui stocke les données de formulaire.La méthode importData
renvoie un objet com.adobe.idp.Document
qui stocke un formulaire PDF contenant les données situées dans la source de données XML.
Enregistrez le formulaire PDF au format PDF.
java.io.File
et assurez-vous que l’extension de fichier est ".PDF".copyToFile
de l’objet Document
pour copier le contenu de l’objet Document
dans le fichier (veillez à utiliser l’objet Document
renvoyé par la méthode importData
).Voir également
Démarrage rapide (mode SOAP) : Importation de données de formulaire à l’aide de l’API Java
Inclusion des fichiers de bibliothèque Java d’AEM Forms
Réglage des propriétés de la connexion
Importez des données de formulaire à l’aide de l’API Form Data Integration (service Web) :
Inclure les fichiers de projet.
Créez un projet Microsoft .NET qui utilise MTOM. Assurez-vous d’utiliser la définition WSDL suivante : http://localhost:8080/soap/services/FormDataIntegration?WSDL&lc_version=9.0.1
.
Remplacez localhost
par l’adresse IP du serveur hébergeant AEM Forms.
Créez un client de service Form Data Integration.
Créez un objet FormDataIntegrationClient
à l’aide de son constructeur par défaut.
Créez un objet FormDataIntegrationClient.Endpoint.Address
à l’aide du constructeur System.ServiceModel.EndpointAddress
. Transmettez une valeur string qui spécifie le WSDL au service AEM Forms (par exemple, http://localhost:8080/soap/services/FormDataIntegration?blob=mtom
). Vous n’avez pas besoin d’utiliser l’attribut lc_version
. Cet attribut est utilisé lorsque vous créez une référence de service. Toutefois, spécifiez ?blob=mtom
pour utiliser MTOM.
Créez un objet System.ServiceModel.BasicHttpBinding
en obtenant la valeur du champ FormDataIntegrationClient.Endpoint.Binding
. Convertissez la valeur de retour en BasicHttpBinding
.
Définissez le champ MessageEncoding
de l’objet System.ServiceModel.BasicHttpBinding
sur WSMessageEncoding.Mtom
. Cette valeur garantit l’utilisation de MTOM.
Activez l’authentification HTTP de base en effectuant les tâches suivantes :
FormDataIntegrationClient.ClientCredentials.UserName.UserName
.FormDataIntegrationClient.ClientCredentials.UserName.Password
.HttpClientCredentialType.Basic
au champ BasicHttpBindingSecurity.Transport.ClientCredentialType
.BasicHttpSecurityMode.TransportCredentialOnly
au champ BasicHttpBindingSecurity.Security.Mode
.Référencez un formulaire PDF.
BLOB
en utilisant son constructeur. Cet objet BLOB
est utilisé pour stocker le formulaire PDF.System.IO.FileStream
en appelant son constructeur. Transmettez une valeur string qui spécifie l’emplacement du formulaire PDF et le mode d’ouverture du fichier.System.IO.FileStream
. Vous pouvez déterminer la taille du tableau d’octets en obtenant la propriété System.IO.FileStream
de l’objet Length
.Read
de l’objet System.IO.FileStream
. Transmettez le tableau d’octets, la position de départ et la longueur du flux à lire.BLOB
en attribuant son champ MTOM
avec le contenu du tableau d’octets.Référencez une source de données XML.
BLOB
en utilisant son constructeur. Cet objet BLOB
est utilisé pour stocker les données importées dans le formulaire.System.IO.FileStream
en appelant son constructeur. Transmettez une valeur string qui spécifie l’emplacement du fichier XML contenant les données à importer et le mode d’ouverture du fichier.System.IO.FileStream
. Vous pouvez déterminer la taille du tableau d’octets en obtenant la propriété System.IO.FileStream
de l’objet Length
.Read
de l’objet System.IO.FileStream
. Transmettez le tableau d’octets, la position de départ et la longueur du flux à lire.BLOB
en attribuant son champ MTOM
avec le contenu du tableau d’octets.Importez des données dans le formulaire PDF.
Importez des données dans le formulaire PDF en appelant la méthode importData
de l’objet FormDataIntegrationClient
et en transmettant les valeurs suivantes :
BLOB
qui stocke le formulaire PDF.BLOB
qui stocke les données de formulaire.La méthode importData
renvoie un objet BLOB
qui stocke un formulaire PDF contenant les données situées dans la source de données XML.
Enregistrez le formulaire PDF au format PDF.
System.IO.FileStream
en appelant son constructeur et en transmettant une valeur string qui représente l’emplacement du fichier PDF.BLOB
renvoyé par la méthode importData
. Renseignez le tableau d’octets en obtenant la valeur du champ MTOM
de l’objet BLOB
.System.IO.BinaryWriter
en appelant son constructeur et en transmettant l’objet System.IO.FileStream
.System.IO.BinaryWriter
de l’objet Write
et en transmettant le tableau d’octets.Voir également
Appel d’AEM Forms à l’aide de MTOM
Vous pouvez exporter des données de formulaire à partir d’un formulaire PDF interactif à l’aide du service Form Data Integration. Le format des données exportées dépend du type de formulaire. Si le type de formulaire est un formulaire Acrobat créé dans Acrobat, les données exportées sont XFDF. Si le type de formulaire est un formulaire XML qui a été créé dans Designer, les données exportées sont XDP.
Pour plus d’informations sur le service Form Data Integration, voir Guide de références des services pour AEM Forms.
Pour exporter les données d’un formulaire PDF, procédez comme suit :
Inclure les fichiers de projet
Incluez les fichiers nécessaires dans votre projet de développement. Si vous créez une application cliente à l’aide de Java, incluez les fichiers JAR nécessaires. Si vous utilisez des services web, veillez à inclure les fichiers proxy.
Les fichiers JAR suivants doivent être ajoutés au chemin d’accès aux classes de votre projet :
Création d’un client de service Form Data Integration
Avant de pouvoir importer des données par programmation dans une API PDF formClient, vous devez créer un client de service Data Integration . Lors de la création d’un client de service, vous définissez les paramètres de connexion requis pour appeler un service. Pour plus d’informations, Définition des propriétés de connexion.
Référence à un formulaire PDF
Pour exporter des données d’un formulaire PDF, vous devez référencer un formulaire PDF créé dans Designer ou Acrobat et contenant des données de formulaire. Si vous tentez d’exporter des données à partir d’un formulaire PDF vide, vous obtiendrez un schéma XML vide.
Exportation des données du formulaire PDF
Après avoir référencé un formulaire PDF contenant des données de formulaire, vous pouvez exporter les données du formulaire. Les données sont exportées dans un schéma XML basé sur le formulaire.
Enregistrer les données du formulaire sous forme de fichier XML
Une fois les données de formulaire exportées, vous pouvez les enregistrer au format XML. Une fois enregistré en tant que fichier XML, vous pouvez ouvrir le fichier XML dans une visionneuse XML pour afficher les données de formulaire.
Voir également
Exportation des données de formulaire à l’aide de l’API Java
Exportation des données de formulaire à l’aide de l’API de service Web
Inclusion des fichiers de bibliothèque Java d’AEM Forms
Réglage des propriétés de la connexion
Démarrages rapides de l’API du service d’intégration des données de formulaire
Importation de données de formulaire
Exportez les données de formulaire à l’aide de l’API Form Data Integration (Java) :
Inclure les fichiers de projet.
Incluez les fichiers JAR client, tels que adobe-formdataintegration-client.jar, dans le chemin de classe de votre projet Java.
Créez un client de service Form Data Integration.
ServiceClientFactory
qui contient des propriétés de connexion.FormDataIntegrationClient
en utilisant son constructeur et en transmettant l’objet ServiceClientFactory
.Référencez un formulaire PDF.
java.io.FileInputStream
à l’aide de son constructeur et transmettez une valeur string qui spécifie l’emplacement du formulaire PDF contenant les données à exporter.com.adobe.idp.Document
qui stocke le formulaire PDF à l’aide du constructeur com.adobe.idp.Document
. Transmettez au constructeur l’objet java.io.FileInputStream
contenant le formulaire PDF.Exportez les données du formulaire PDF.
Exportez les données de formulaire en appelant la méthode FormDataIntegrationClient
de l’objet exportData
et transmettez l’objet com.adobe.idp.Document
qui stocke le formulaire PDF. Cette méthode renvoie un objet com.adobe.idp.Document
qui stocke les données de formulaire sous la forme d’un schéma XML.
Enregistrez le formulaire PDF au format PDF.
java.io.File
et assurez-vous que l’extension de fichier est XML.copyToFile
de l’objet Document
pour copier le contenu de l’objet Document
dans le fichier (veillez à utiliser l’objet Document
renvoyé par la méthode exportData
).Voir également
Démarrage rapide (mode SOAP) : Exportation des données de formulaire à l’aide de l’API Java
Inclusion des fichiers de bibliothèque Java d’AEM Forms
Réglage des propriétés de la connexion
Exportez les données de formulaire à l’aide de l’API Form Data Integration (service Web) :
Inclure les fichiers de projet.
Créez un projet Microsoft .NET qui utilise MTOM. Assurez-vous d’utiliser la définition WSDL suivante : http://localhost:8080/soap/services/FormDataIntegration?WSDL&lc_version=9.0.1
.
localhost
par l’adresse IP du serveur hébergeant AEM Forms.Créez un client de service Form Data Integration.
Créez un objet FormDataIntegrationClient
à l’aide de son constructeur par défaut.
Créez un objet FormDataIntegrationClient.Endpoint.Address
à l’aide du constructeur System.ServiceModel.EndpointAddress
. Transmettez une valeur string qui spécifie le WSDL au service AEM Forms (par exemple, http://localhost:8080/soap/services/FormDataIntegration?blob=mtom
). Vous n’avez pas besoin d’utiliser l’attribut lc_version
. Cet attribut est utilisé lorsque vous créez une référence de service. Toutefois, spécifiez ?blob=mtom
pour utiliser MTOM.
Créez un objet System.ServiceModel.BasicHttpBinding
en obtenant la valeur du champ FormDataIntegrationClient.Endpoint.Binding
. Convertissez la valeur de retour en BasicHttpBinding
.
Définissez le champ MessageEncoding
de l’objet System.ServiceModel.BasicHttpBinding
sur WSMessageEncoding.Mtom
. Cette valeur garantit l’utilisation de MTOM.
Activez l’authentification HTTP de base en effectuant les tâches suivantes :
FormDataIntegrationClient.ClientCredentials.UserName.UserName
.FormDataIntegrationClient.ClientCredentials.UserName.Password
.HttpClientCredentialType.Basic
au champ BasicHttpBindingSecurity.Transport.ClientCredentialType
.BasicHttpSecurityMode.TransportCredentialOnly
au champ BasicHttpBindingSecurity.Security.Mode
.Référencez un formulaire PDF.
BLOB
en utilisant son constructeur. Cet objet BLOB
est utilisé pour stocker le formulaire PDF à partir duquel les données sont exportées.System.IO.FileStream
en appelant son constructeur. Transmettez une valeur string qui spécifie l’emplacement du formulaire PDF et le mode d’ouverture du fichier.System.IO.FileStream
. Vous pouvez déterminer la taille du tableau d’octets en obtenant la propriété System.IO.FileStream
de l’objet Length
.System.IO.FileStream
de l’objet Read
et en transmettant le tableau d’octets, la position de départ et la longueur du flux à lire.BLOB
en attribuant son champ MTOM
avec le contenu du tableau d’octets.Exportez les données du formulaire PDF.
Importez des données dans un formulaire PDF en appelant la méthode FormDataIntegrationClient
de l’objet exportData
et en transmettant l’objet BLOB
qui stocke le formulaire PDF. Cette méthode renvoie un objet BLOB
qui stocke les données de formulaire sous la forme d’un schéma XML.
Enregistrez le formulaire PDF au format PDF.
System.IO.FileStream
en appelant son constructeur et en transmettant une valeur string qui représente l’emplacement du fichier XML.BLOB
renvoyé par la méthode exportData
. Renseignez le tableau d’octets en obtenant la valeur du champ MTOM
de l’objet BLOB
.System.IO.BinaryWriter
en appelant son constructeur et en transmettant l’objet System.IO.FileStream
.Write
de l’objet System.IO.BinaryWriter
et en transmettant le tableau d’octets.Voir également
Appel d’AEM Forms à l’aide de MTOM
Appel d’AEM Forms à l’aide de SwaRef