Disassemblare un documento PDF utilizzando l’API del servizio web disassemble-a-pdf-document-usingthe-web-service-api
Gli esempi e gli esempi contenuti in questo documento sono solo per AEM Forms in ambiente JEE.
Disassemblare un documento PDF utilizzando l'API del servizio Assembler (servizio Web):
-
Includi file di progetto.
Creare un progetto Microsoft .NET che utilizza MTOM. Assicurarsi di utilizzare la seguente definizione WSDL durante l'impostazione di un riferimento al servizio:
http://localhost:8080/soap/services/AssemblerService?WSDL&lc_version=9.0.1.note note NOTE Sostituisci localhostcon l'indirizzo IP del server che ospita AEM Forms. -
Creare un client PDF Assembler.
-
Creare un oggetto
AssemblerServiceClientutilizzando il relativo costruttore predefinito. -
Creare un oggetto
AssemblerServiceClient.Endpoint.Addressutilizzando il costruttoreSystem.ServiceModel.EndpointAddress. Passa un valore stringa che specifica il WSDL al servizio AEM Forms (ad esempio,http://localhost:8080/soap/services/AssemblerService?blob=mtom). Non è necessario utilizzare l'attributolc_version. Questo attributo viene utilizzato quando si crea un riferimento a un servizio. -
Creare un oggetto
System.ServiceModel.BasicHttpBindingottenendo il valore del campoAssemblerServiceClient.Endpoint.Binding. Eseguire il cast del valore restituito inBasicHttpBinding. -
Impostare il campo
MessageEncodingdell'oggettoSystem.ServiceModel.BasicHttpBindingsuWSMessageEncoding.Mtom. Questo valore assicura che venga utilizzato MTOM. -
Abilita l’autenticazione HTTP di base eseguendo le seguenti attività:
- Assegnare il nome utente dei moduli AEM al campo
AssemblerServiceClient.ClientCredentials.UserName.UserName. - Assegnare il valore della password corrispondente al campo
AssemblerServiceClient.ClientCredentials.UserName.Password. - Assegnare il valore costante
HttpClientCredentialType.Basical campoBasicHttpBindingSecurity.Transport.ClientCredentialType. - Assegnare il valore costante
BasicHttpSecurityMode.TransportCredentialOnlyal campoBasicHttpBindingSecurity.Security.Mode.
- Assegnare il nome utente dei moduli AEM al campo
-
-
Fare riferimento a un documento DDX esistente.
- Creare un oggetto
BLOButilizzando il relativo costruttore. L'oggettoBLOBviene utilizzato per archiviare il documento DDX. - Creare un oggetto
System.IO.FileStreamrichiamando il relativo costruttore. Passa un valore stringa che rappresenta la posizione del file del documento DDX e la modalità di apertura del file. - Creare una matrice di byte che memorizza il contenuto dell'oggetto
System.IO.FileStream. È possibile determinare le dimensioni della matrice di byte ottenendo la proprietàLengthdell'oggettoSystem.IO.FileStream. - Compilare la matrice di byte con i dati di flusso richiamando il metodo
Readdell'oggettoSystem.IO.FileStreame passando la matrice di byte, la posizione iniziale e la lunghezza del flusso da leggere. - Compilare l'oggetto
BLOBassegnando la relativa proprietàMTOMal contenuto della matrice di byte.
- Creare un oggetto
-
Fare riferimento a un documento PDF da disassemblare.
- Creare un oggetto
BLOButilizzando il relativo costruttore. L'oggettoBLOBviene utilizzato per memorizzare il documento PDF di input. Questo oggettoBLOBè passato ainvokeOneDocumentcome argomento. - Creare un oggetto
System.IO.FileStreamrichiamandone il costruttore e passando un valore stringa che rappresenta la posizione del file del documento PDF di input e la modalità di apertura del file. - Creare una matrice di byte che memorizza il contenuto dell'oggetto
System.IO.FileStream. È possibile determinare le dimensioni della matrice di byte ottenendo la proprietàLengthdell'oggettoSystem.IO.FileStream. - Compilare la matrice di byte con i dati di flusso richiamando il metodo
Readdell'oggettoSystem.IO.FileStreame passando la matrice di byte, la posizione iniziale e la lunghezza del flusso da leggere. - Compilare l'oggetto
BLOBassegnando al relativo campoMTOMil contenuto della matrice di byte. - Creare un oggetto
MyMapOf_xsd_string_To_xsd_anyType. Questo oggetto insieme viene utilizzato per memorizzare il PDF da disassemblare. - Creare un oggetto
MyMapOf_xsd_string_To_xsd_anyType_Item. - Assegnare un valore stringa che rappresenta il nome chiave al campo
keydell'oggettoMyMapOf_xsd_string_To_xsd_anyType_Item. Questo valore deve corrispondere al valore dell'elemento di origine PDF specificato nel documento DDX. - Assegnare l'oggetto
BLOBche memorizza il documento PDF al campovaluedell'oggettoMyMapOf_xsd_string_To_xsd_anyType_Item. - Aggiungere l'oggetto
MyMapOf_xsd_string_To_xsd_anyType_Itemall'oggettoMyMapOf_xsd_string_To_xsd_anyType. Richiama il metodoAdddell'oggettoMyMapOf_xsd_string_To_xsd_anyTypee passa l'oggettoMyMapOf_xsd_string_To_xsd_anyType.
- Creare un oggetto
-
Impostare le opzioni di runtime.
- Creare un oggetto
AssemblerOptionSpecche memorizza le opzioni di runtime utilizzando il relativo costruttore. - Impostare le opzioni di runtime per soddisfare i requisiti aziendali assegnando un valore a un membro dati che appartiene all'oggetto
AssemblerOptionSpec. Ad esempio, per indicare al servizio Assembler di continuare a elaborare un processo quando si verifica un errore, assegnarefalseal campofailOnErrordell'oggettoAssemblerOptionSpec.
- Creare un oggetto
-
Disassemblare il documento PDF.
Richiama il metodo
invokeDDXdell'oggettoAssemblerServiceCliente passa i seguenti valori:- Oggetto
BLOBche rappresenta il documento DDX che disassembla il documento PDF - L'oggetto
MyMapOf_xsd_string_To_xsd_anyTypeche contiene il documento PDF da disassemblare - Oggetto
AssemblerOptionSpecche specifica le opzioni di runtime
Il metodo
invokeDDXrestituisce un oggettoAssemblerResultcontenente i risultati del processo ed eventuali eccezioni. - Oggetto
-
Salvare i documenti PDF disassemblati.
Per ottenere i documenti di PDF appena creati, effettuare le seguenti operazioni:
- Accedere al campo
documentsdell'oggettoAssemblerResult, che è un oggettoMapcontenente i documenti PDF disassemblati. - Scorrere l'oggetto
Mapper ottenere ogni documento risultante. Quindi, esegui il cast divaluedel membro dell'array in unBLOB. - Estrarre i dati binari che rappresentano il documento PDF accedendo alla proprietà
MTOMdell'oggettoBLOB. Restituisce una matrice di byte che è possibile scrivere in un file PDF.
- Accedere al campo
Consulta anche
Disassemblaggio di documenti PDF a livello di programmazione
Richiamare AEM Forms tramite MTOM