EncryptionサービスJava APIクイック開始(SOAP)

クイック開始(SOAPモード):Java APIを使用したPDFドキュメントの暗号化

クイック開始(SOAPモード):Java APIを使用したパスワードベースの暗号化の削除

クイック開始(SOAPモード):Java APIを使用した証明書によるPDFドキュメントの暗号化

クイック開始(SOAPモード):Java APIを使用した証明書ベースの暗号化の削除

クイック開始(SOAPモード):Java APIを使用した暗号化されたPDFドキュメントのロック解除

クイック開始(SOAPモード):Java APIを使用した暗号化タイプの決定

AEM Formsの操作は、AEM Formsで厳密に型指定されたAPIを使用して実行できます。接続モードはSOAPに設定する必要があります。

メモ

「AEMフォームのプログラミング」にあるクイック開始は、JBoss Application ServerおよびMicrosoft WindowsオペレーティングシステムにデプロイされるFormsサーバーに基づいています。 ただし、UNIXなど別のオペレーティングシステムを使用している場合は、Windows固有のパスを、該当するオペレーティングシステムでサポートされているパスに置き換えます。 同様に、別のJ2EEアプリケーションサーバーを使用する場合は、有効な接続プロパティを指定していることを確認してください。 接続プロパティの設定を参照してください。

クイック開始(SOAPモード):Java APIを使用したPDFドキュメントの暗号化

次のJavaコードの例は、Loan.pdf​という名前のPDFドキュメントを、パスワード値OpenPasswordで暗号化します。 マスターパスワードはPermissionPasswordです。 保護されたPDFドキュメントは、EncryptLoan.pdf​というPDFファイルとして保存されます。 (「パスワードによるPDFドキュメントの暗号化」を参照)。

 /* 
     * 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(); 
         } 
     } 
 }

クイック開始(SOAPモード):Java APIを使用したパスワードベースの暗号化の削除

次のJavaコードの例を使用すると、EncryptLoan.pdf​というPDFドキュメントからパスワードベースの暗号化を削除できます。 パスワードベースの暗号化を削除するために使用されるマスターパスワードの値は​PermissionPassword​です。 保護されていないPDFドキュメントは、noEncryptionLoan.pdf​というPDFファイルとして保存されます。 (「パスワード暗号化の削除」を参照)。

 /* 
     * 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();  
         }     
     } 
 }

クイック開始(SOAPモード):Java APIを使用した証明書によるPDFドキュメントの暗号化

次のJavaコードの例は、Loan.pdf​というPDFドキュメントを、Encryption.cer​という証明書で暗号化します。 暗号化されたPDFドキュメントは、EncryptLoanCert.pdf​というPDFファイルとして保存されます。 (「証明書によるPDFドキュメントの暗号化」を参照)。

 /* 
     * 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(); 
             } 
     } 
 } 
 

クイック開始(SOAPモード):Java APIを使用した証明書ベースの暗号化の削除

次のJavaコードの例を使用すると、EncryptLoanCert.pdf​というPDFドキュメントから証明書ベースの暗号化を削除できます。 暗号化を削除するために使用される公開鍵のエイリアスはEncryptionです。 保護されていないPDFドキュメントは、noEncryptionLoan.pdf​というPDFファイルとして保存されます。 (「証明書ベースの暗号化の削除」を参照)。

 /* 
     * 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();  
             }     
     } 
 }

クイック開始(SOAPモード):Java APIを使用して暗号化されたPDFドキュメントのロックを解除する

次のJavaコードの例では、パスワードで暗号化されたPDFドキュメント​EncryptLoan.pdf​のロックを解除しています。 (暗号化されたPDFドキュメントのロック解除を参照)。

 /* 
     * 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()); 
         }     
     } 
 } 
 

クイック開始(SOAPモード):Java APIを使用した暗号化の種類の決定

次のJavaコードの例は、EncryptLoan.pdf​という名前のPDFドキュメントを保護する暗号化の種類を決定します。 (「暗号化タイプの決定」を参照)。

 /* 
     * 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(); 
         }     
     } 
 } 
  
  
 

このページ