Guida rapida API Java del servizio di crittografia (SOAP)

Avvio rapido (modalità SOAP): Crittografia di un documento PDF tramite l’API Java

Avvio rapido (modalità SOAP): Rimozione della crittografia basata su password tramite l’API Java

Avvio rapido (modalità SOAP): Crittografia di un documento PDF con un certificato tramite l’API Java

Avvio rapido (modalità SOAP): Rimozione della crittografia basata su certificato tramite l’API Java

Avvio rapido (modalità SOAP): Sblocco di un documento PDF crittografato tramite API Java

Avvio rapido (modalità SOAP): Determinazione del tipo di crittografia tramite l’API Java

Le operazioni AEM Forms possono essere eseguite utilizzando l’API fortemente tipizzata di AEM Forms e la modalità di connessione deve essere impostata su SOAP.

NOTA

Gli avvii rapidi disponibili in Programmazione con moduli AEM sono basati su Forms Server distribuito su JBoss Application Server e sul sistema operativo Microsoft Windows. Tuttavia, se si utilizza un altro sistema operativo, ad esempio UNIX, sostituire percorsi specifici di Windows con percorsi supportati dal sistema operativo applicabile. Allo stesso modo, se utilizzi un altro server applicativo J2EE, assicurati di specificare proprietà di connessione valide. Vedere Impostazione delle proprietà di connessione.

Avvio rapido (modalità SOAP): Crittografia di un documento PDF tramite l’API Java

Nell'esempio di codice Java seguente viene crittografato un documento PDF denominato Loan.pdf con un valore di password OpenPassword. La password master è PermissionPassword. Il documento PDF protetto viene salvato come file PDF denominato EncryptLoan.pdf. (Vedere Cifratura di documenti PDF con una password.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if the forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.File; 
 import java.io.FileInputStream; 
 import java.util.ArrayList; 
 import java.util.List; 
 import java.util.Properties; 
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class PasswordEncryptPDFSoap{ 
  
     public static void main(String[] args) { 
          
     try{ 
         //Set connection properties required to invoke AEM Forms using SOAP mode                                 
         Properties connectionProps = new Properties(); 
         connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
         connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
         connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
         connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
         connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
          
         //Create a ServiceClientFactory instance 
         ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
  
         //Create an EncryptionServiceClient object 
         EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
         //Specify the PDF document to encrypt with a password 
         FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\Loan.pdf");     
         Document inDoc = new Document (fileInputStream);  
  
         //Create a PasswordEncryptionOptionSpec object that stores encryption run-time values 
         PasswordEncryptionOptionSpec passSpec = new PasswordEncryptionOptionSpec(); 
          
         //Specify the PDF document resource to encrypt 
         passSpec.setEncryptOption(PasswordEncryptionOption.ALL); 
          
         //Specify the permission associated with the password 
         //These permissions enable data to be extracted from a password 
         //protected PDF form 
         List<PasswordEncryptionPermission> encrypPermissions = new ArrayList<PasswordEncryptionPermission>();  
         encrypPermissions.add(PasswordEncryptionPermission.PASSWORD_EDIT_ADD); 
         encrypPermissions.add(PasswordEncryptionPermission.PASSWORD_EDIT_MODIFY); 
         passSpec.setPermissionsRequested(encrypPermissions); 
          
         //Specify the Acrobat version 
         passSpec.setCompatability(PasswordEncryptionCompatability.ACRO_7); 
          
         //Specify the password values 
         passSpec.setDocumentOpenPassword("OpenPassword"); 
         passSpec.setPermissionPassword("PermissionPassword"); 
          
         //Encrypt the PDF document 
         Document encryptDoc = encryptClient.encryptPDFUsingPassword(inDoc,passSpec);  
          
         //Save the password-encrypted PDF document 
         File outFile = new File("C:\\Adobe\EncryptLoan.pdf"); 
         encryptDoc.copyToFile (outFile); 
  
         }catch (Exception e) { 
             e.printStackTrace(); 
         } 
     } 
 }

Avvio rapido (modalità SOAP): Rimozione della crittografia basata su password tramite l'API Java

Nell'esempio di codice Java seguente viene rimossa la crittografia basata su password da un documento PDF denominato EncryptLoan.pdf. Il valore della password master utilizzato per rimuovere la crittografia basata su password è PermissionPassword. Il documento PDF non protetto viene salvato come file PDF denominato noEncryptionLoan.pdf. (Vedere Rimozione della crittografia della password.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if the forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.File; 
 import java.io.FileInputStream; 
 import java.util.Properties; 
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class RemovePasswordFromPDFSOAP { 
  
     public static void main(String[] args) { 
          
         try{ 
             //Set connection properties required to invoke AEM Forms 
             Properties connectionProps = new Properties(); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
                                      
             //Create a ServiceClientFactory object 
             ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
                  
             //Create an EncryptionServiceClient object 
             EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
             //Get the encrypted PDF from which to remove password-based encryption 
             FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\EncryptLoan.pdf");     
             Document inDoc = new Document (fileInputStream); 
          
             //Remove password-based encryption from the PDF document  
             Document encryptDoc = encryptClient.removePDFPasswordSecurity(inDoc,"PermissionPassword"); 
  
             //Save the unsecured PDF document 
             File outFile = new File("C:\\Adobe\noEncryptionLoan.pdf"); 
             encryptDoc.copyToFile (outFile); 
              
         }catch (Exception e) { 
             e.printStackTrace();  
         }     
     } 
 }

Avvio rapido (modalità SOAP): Crittografia di un documento PDF con un certificato tramite l’API Java

Il seguente esempio di codice Java crittografa un documento PDF denominato Loan.pdf con un certificato denominato Encryption.cer. Il documento PDF crittografato viene salvato come file PDF denominato EncryptLoanCert.pdf. (Vedere Cifratura di documenti PDF con certificati.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if the forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.File; 
 import java.io.FileInputStream; 
 import java.util.ArrayList; 
 import java.util.List; 
 import java.util.Properties; 
  
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class PKIEncryptPDFSoap { 
  
     public static void main(String[] args) { 
          
         try{ 
             //Set connection properties required to invoke AEM Forms using SOAP mode                                 
             Properties connectionProps = new Properties(); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
          
             //Create a ServiceClientFactory instance 
             ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
  
             //Create an EncryptionServiceClient object 
             EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
             //Specify the PDF document to encrypt with a certificate 
             FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\Loan.pdf");     
             Document inDoc = new Document (fileInputStream);  
  
             //Set the List that stores PKI information 
             List pkiIdentities = new ArrayList();  
                  
             //Set the Permission List 
             List permList = new ArrayList(); 
             permList.add(CertificateEncryptionPermissions.PKI_ALL_PERM) ; 
                  
             //Create a Recipient object to store certificate information 
             Recipient recipient = new Recipient(); 
                  
             //Specify the private key that is used to encrypt the document 
             FileInputStream fileInputStreamCert = new FileInputStream("C:\\Adobe\Encryption.cer");     
             Document privateKey = new Document (fileInputStreamCert);  
             recipient.setX509Cert(privateKey); 
                                          
             //Create an EncryptionIdentity object 
             CertificateEncryptionIdentity encryptionId = new CertificateEncryptionIdentity();  
             encryptionId.setPerms(permList); 
             encryptionId.setRecipient(recipient); 
                  
             //Add the EncryptionIdentity to the list 
             pkiIdentities.add(encryptionId); 
              
             //Set encryption run-time options 
             CertificateEncryptionOptionSpec certOptionsSpec = new CertificateEncryptionOptionSpec();  
             certOptionsSpec.setOption(CertificateEncryptionOption.ALL); 
             certOptionsSpec.setCompat(CertificateEncryptionCompatibility.ACRO_7); 
                              
             //Encrypt the PDF document with a certificate 
             Document encryptDoc = encryptClient.encryptPDFUsingCertificates(inDoc,pkiIdentities, certOptionsSpec);  
          
             //Save the encrypted PDF document 
             File outFile = new File("C:\\Adobe\EncryptLoanCert.pdf"); 
             encryptDoc.copyToFile (outFile); 
  
             }catch (Exception e) { 
                 e.printStackTrace(); 
             } 
     } 
 } 
 

Avvio rapido (modalità SOAP): Rimozione della crittografia basata su certificato tramite l’API Java

Nell'esempio di codice Java seguente viene rimossa la crittografia basata su certificato da un documento PDF denominato EncryptLoanCert.pdf. L’alias della chiave pubblica utilizzata per rimuovere la crittografia è Encryption. Il documento PDF non protetto viene salvato come file PDF denominato noEncryptionLoan.pdf. (Vedere Rimozione della crittografia basata su certificato.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if the forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.File; 
 import java.io.FileInputStream; 
 import java.util.Properties; 
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class RemovePKIFromPDFSOAP { 
  
     public static void main(String[] args) { 
          
         try{ 
             //Set connection properties required to invoke AEM Forms using SOAP mode                             
             Properties connectionProps = new Properties(); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
                          
             //Create a ServiceClientFactory object 
             ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
                  
             //Create an EncryptionServiceClient object 
             EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
             //Get the encrypted PDF document  
             FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\EncryptLoanCert.pdf");     
             Document inDoc = new Document (fileInputStream); 
          
             //Remove certificate-based encryption from the PDF document  
             Document encryptDoc = encryptClient.removePDFCertificateSecurity(inDoc, "Encryption"); 
  
             //Save the unsecured PDF document 
             File outFile = new File("C:\\Adobe\noEncryptionLoan.pdf"); 
             encryptDoc.copyToFile (outFile); 
              
         }catch (Exception e) { 
                 e.printStackTrace();  
             }     
     } 
 }

Avvio rapido (modalità SOAP): Sblocco di un documento PDF crittografato utilizzando l'API Java

Il seguente esempio di codice Java sblocca un documento PDF crittografato con password denominato EncryptLoan.pdf. (Consultare Sblocco di documenti PDF crittografati.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.FileInputStream; 
 import java.util.Properties; 
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class UnlockPDFSOAP { 
  
     public static void main(String[] args) { 
          
         try{ 
             //Set connection properties required to invoke AEM Forms using SOAP mode                                 
             Properties connectionProps = new Properties(); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
                          
             //Create a ServiceClientFactory object 
             ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
                  
             //Create an EncryptionServiceClient object 
             EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
             //Get the password-encrypted PDF document to unlock 
             FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\EncryptLoan.pdf");     
             Document inDoc = new Document (fileInputStream); 
  
             //Specify the password to open the password-encrypted PDF document 
             String openPassword = "OpenPassword" ;  
  
             //Unlock the password-encrypted PDF document 
             Document unlockedDoc = encryptClient.unlockPDFUsingPassword(inDoc,openPassword); 
          
         }catch (Exception e) { 
                 System.out.println("The following error occurred during this operation " +e.getMessage()); 
         }     
     } 
 } 
 

Avvio rapido (modalità SOAP): Determinazione del tipo di crittografia utilizzando l'API Java

Il seguente esempio di codice Java determina il tipo di crittografia che protegge un documento PDF denominato EncryptLoan.pdf. (Consultare Determinazione del tipo di cifratura.)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-encryption-client.jar 
     * 2. adobe-livecycle-client.jar 
     * 3. adobe-usermanager-client.jar 
     * 4. adobe-utilities.jar 
     * 5. jboss-client.jar (use a different JAR file if the forms server is not deployed 
     * on JBoss) 
     * 6. activation.jar (required for SOAP mode) 
     * 7. axis.jar (required for SOAP mode) 
     * 8. commons-codec-1.3.jar (required for SOAP mode) 
     * 9.  commons-collections-3.1.jar  (required for SOAP mode) 
     * 10. commons-discovery.jar (required for SOAP mode) 
     * 11. commons-logging.jar (required for SOAP mode) 
     * 12. dom3-xml-apis-2.5.0.jar (required for SOAP mode) 
     * 13. jaxen-1.1-beta-9.jar (required for SOAP mode) 
     * 14. jaxrpc.jar (required for SOAP mode) 
     * 15. log4j.jar (required for SOAP mode) 
     * 16. mail.jar (required for SOAP mode) 
     * 17. saaj.jar (required for SOAP mode) 
     * 18. wsdl4j.jar (required for SOAP mode) 
     * 19. xalan.jar (required for SOAP mode) 
     * 20. xbean.jar (required for SOAP mode) 
     * 21. xercesImpl.jar (required for SOAP mode) 
     * 
     * These JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/common 
     * 
     * The adobe-utilities.jar file is located in the following path: 
     * <install directory>/sdk/client-libs/jboss 
     * 
     * The jboss-client.jar file is located in the following path: 
     * <install directory>/jboss/bin/client 
     * 
     * SOAP required JAR files are located in the following path: 
     * <install directory>/sdk/client-libs/thirdparty 
     * 
     * If you want to invoke a remote forms server instance and there is a 
     * firewall between the client application and the server, then it is  
     * recommended that you use the SOAP mode. When using the SOAP mode,  
     * you have to include these additional JAR files 
     * 
     * For information about the SOAP  
     * mode, see "Setting connection properties" in Programming  
     * with AEM Forms 
     */ 
 import java.io.FileInputStream; 
 import java.util.Properties; 
 import com.adobe.idp.Document; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory; 
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties; 
 import com.adobe.livecycle.encryption.client.*; 
  
 public class GetEncryptionTypeSOAP { 
  
     public static void main(String[] args) { 
          
         try{ 
             //Set connection properties required to invoke AEM Forms using SOAP mode                             
             Properties connectionProps = new Properties(); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_SOAP_ENDPOINT, "https://[server]:[port]"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_SOAP_PROTOCOL);           
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE, "JBoss"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "administrator"); 
             connectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password"); 
                          
             //Create a ServiceClientFactory object 
             ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
                  
             //Create a EncryptionServiceClient object 
             EncryptionServiceClient encryptClient = new EncryptionServiceClient(myFactory);  
          
             //Get the PDF document 
             FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\EncryptLoan.pdf");     
             Document inDoc = new Document (fileInputStream); 
  
             //Determine the type of encryption of the PDF document 
             EncryptionTypeResult encryptTypeResult = encryptClient.getPDFEncryption(inDoc); 
                          
             if (encryptTypeResult.getEncryptionType() == EncryptionType.PASSWORD) 
                 System.out.println("The PDF document is protected with password-based encryption"); 
             else if (encryptTypeResult.getEncryptionType() == EncryptionType.POLICY_SERVER)     
                 System.out.println("The PDF document is protected with policy"); 
             else if (encryptTypeResult.getEncryptionType() == EncryptionType.CERTIFICATE)     
                 System.out.println("The PDF document is protected with certificate-based encryption"); 
             else if (encryptTypeResult.getEncryptionType() == EncryptionType.OTHER)     
                 System.out.println("The PDF document is protected with another type of encryption");     
             else if (encryptTypeResult.getEncryptionType() == EncryptionType.NONE)     
                 System.out.println("The PDF document is not protected.");         
         }catch (Exception e) { 
                 e.printStackTrace(); 
         }     
     } 
 } 
  
  
 

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now