Acrobat Reader DC 확장 서비스Java API 빠른 시작(SOAP) acrobat-reader-dc-extensions-servicejava-api-quick-start-soap

Acrobat Reader DC 확장 서비스에서는 다음 빠른 시작을 사용할 수 있습니다.

빠른 시작(SOAP 모드):Java API를 사용하여 사용 권한 적용

PDF 문서에서 사용 권한 제거

빠른 시작(SOAP 모드): Java API를 사용하여 자격 증명 정보 검색

AEM Forms 작업은 AEM Forms 강력한 형식의 API를 사용하여 수행할 수 있으며 연결 모드를 SOAP로 설정해야 합니다.

NOTE
AEM Forms을 사용한 프로그래밍의 빠른 시작은 Forms 서버 운영 체제를 기반으로 합니다. 그러나 UNIX와 같은 다른 운영 체제를 사용하는 경우에는 Windows 특정 경로를 해당 운영 체제에서 지원하는 경로로 바꿉니다. 마찬가지로 다른 J2EE 응용 프로그램 서버를 사용하는 경우 유효한 연결 속성을 지정해야 합니다. 다음을 참조하십시오 연결 속성 설정.

빠른 시작(SOAP 모드):Java API를 사용하여 사용 권한 적용 quick-start-soap-mode-applying-usage-rights-using-the-java-api

다음 Java 코드 예제에서는 PDF 문서에 사용 권한을 적용합니다. Loan.pdf. 권한이 활성화된 PDF 문서는 다음 이름의 PDF 파일로 저장됩니다. LoanUsageRights.pdf. 이 PDF 문서에는 다음 사용 권한이 적용됩니다. enabledComments, enabledFormFillIn, 및 enabledDigitalSignatures. (참조: PDF 문서에 사용 권한 적용.)

 /*
     * This Java Quick Start uses the SOAP mode and contains the following JAR files
     * in the class path:
     * 1. adobe-reader-extensions-client.jar
     * 2. adobe-livecycle-client.jar
     * 3. adobe-usermanager-client.jar
     * 4. activation.jar (required for SOAP mode)
     * 5. axis.jar (required for SOAP mode)
     * 6. commons-codec-1.3.jar (required for SOAP mode)
     * 7. commons-collections-3.2.jar  (required for SOAP mode)
     * 8. commons-discovery.jar (required for SOAP mode)
     * 9. commons-logging.jar (required for SOAP mode)
     * 10. dom3-xml-apis-2.5.0.jar (required for SOAP mode)
     * 11. jaxen-1.1-beta-9.jar (required for SOAP mode)
     * 12. jaxrpc.jar (required for SOAP mode)
     * 13. log4j.jar (required for SOAP mode)
     * 14. mail.jar (required for SOAP mode)
     * 15. saaj.jar (required for SOAP mode)
     * 16. wsdl4j.jar (required for SOAP mode)
     * 17. xalan.jar (required for SOAP mode)
     * 18. xbean.jar (required for SOAP mode)
     * 19. xercesImpl.jar (required for SOAP mode)
     *
     * These JAR files are in the following path:
     * <install directory>/sdk/client-libs/common
     *
     *
     * <install directory>/jboss/bin/client
     *
     * SOAP required JAR files are 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 com.adobe.livecycle.readerextensions.client.*;
 import java.util.*;
 import java.io.File;
 import java.io.FileInputStream;
 import com.adobe.idp.Document;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;

 public class ApplyUsageRightsSOAP{

     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 ReaderExtensionsServiceClient object
           ReaderExtensionsServiceClient reClient = new ReaderExtensionsServiceClient(myFactory);

           //Retrieve the PDF document to which to apply usage rights
           FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\Loan.pdf");
           Document inputPDF = new Document(fileInputStream);

           //Create a UsageRight object and specify specific usage rights
           UsageRights useRight = new UsageRights();
           useRight.setEnabledDynamicFormFields(true);
           useRight.setEnabledComments(true);
           useRight.setEnabledFormFillIn(true);
           useRight.setEnabledDigitalSignatures(true);

           //Create a ReaderExtensionsOptions object
           ReaderExtensionsOptionSpec reOptions = new ReaderExtensionsOptionSpec();

           //Set the usage rights
           reOptions.setUsageRights(useRight);
           reOptions.setMessage("This is a Rights-Enabled PDF Document");

           //Apply usage rights to a PDF document
           Document rightsEnabledPDF = reClient.applyUsageRights(
              inputPDF,
              "RE2",
             null,
             reOptions);

           //Create a PDF file that represents the rights-enabled PDF document
           File resultFile = new File("C:\\Adobe\LoanUsageRights.pdf");
           rightsEnabledPDF.copyToFile(resultFile);

         }catch (Exception e) {
              e.printStackTrace();
         }
     }
 }

빠른 시작(SOAP 모드): Java API를 사용하여 PDF 문서에서 사용 권한 제거 quick-start-soap-mode-removing-usage-rights-from-a-pdf-document-using-the-java-api

다음 Java 코드 예제에서는 권한이 활성화된 다음 PDF 문서에서 사용 권한을 제거합니다. LoanUsageRights.pdf. (참조: PDF 문서에서 사용 권한 제거.)

 /*
     * This Java Quick Start uses the SOAP mode and contains the following JAR files
     * in the class path:
     * 1. adobe-reader-extensions-client.jar
     * 2. adobe-livecycle-client.jar
     * 3. adobe-usermanager-client.jar
     * 4. activation.jar (required for SOAP mode)
     * 5. axis.jar (required for SOAP mode)
     * 6. commons-codec-1.3.jar (required for SOAP mode)
     * 7. commons-collections-3.2.jar  (required for SOAP mode)
     * 8. commons-discovery.jar (required for SOAP mode)
     * 9. commons-logging.jar (required for SOAP mode)
     * 10. dom3-xml-apis-2.5.0.jar (required for SOAP mode)
     * 11. jaxen-1.1-beta-9.jar (required for SOAP mode)
     * 12. jaxrpc.jar (required for SOAP mode)
     * 13. log4j.jar (required for SOAP mode)
     * 14. mail.jar (required for SOAP mode)
     * 15. saaj.jar (required for SOAP mode)
     * 16. wsdl4j.jar (required for SOAP mode)
     * 17. xalan.jar (required for SOAP mode)
     * 18. xbean.jar (required for SOAP mode)
     * 19. xercesImpl.jar (required for SOAP mode)
     *
     * The JBoss files must be kept in the jboss\client folder. You can copy the client folder to
     * your local development environment and then include the 3 JBoss JAR files in your class path
     *
     * These JAR files are in the following path:
     * <install directory>/sdk/client-libs/common
     *
     *
     * <install directory>/jboss/bin/client
     *
     * 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 additional JAR files in the following
     * path
     * <install directory>/sdk/client-libs/thirdparty
     *
     * For information about the SOAP
     * mode and the additional JAR files that need to be included,
     * see "Setting connection properties" in Programming
     * with AEM Forms
     *
     * For complete details about the location of the AEM Forms JAR files,
     * see "Including AEM Forms Java library files" in Programming
     * with AEM Forms
     */
 import com.adobe.livecycle.readerextensions.client.*;
 import java.util.*;
 import java.io.File;
 import java.io.FileInputStream;
 import com.adobe.idp.Document;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;

 public class RemoveUsageRights{

     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 a ReaderExtensionsServiceClient object
           ReaderExtensionsServiceClient reClient = new ReaderExtensionsServiceClient(myFactory);

                //Retrieve a rights-enabled PDF document from
                //which to remove usage rights
           FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\LoanUsageRights.pdf");
           Document inputPDF = new Document(fileInputStream);

           //Remove usage rights from the PDF document
           Document rightsEnabledPDF = reClient.removeUsageRights(inputPDF);

           //Save the PDF document as a PDF file
           File resultFile = new File("C:\\Adobe\noUsageRightsLoan.pdf");
           rightsEnabledPDF.copyToFile(resultFile);
           System.out.println("Usage rights were removed from the document");

         }catch (Exception e) {
              e.printStackTrace();
         }
     }
 }

빠른 시작(SOAP 모드): Java API를 사용하여 자격 증명 정보 검색 quick-start-soap-mode-retrieving-credential-information-using-the-java-api

다음 Java 코드 예제에서는 권한이 활성화된 PDF 문서에 사용 권한을 적용하는 데 사용되는 자격 증명에 대한 정보를 검색합니다. LoanUsageRights.pdf. (참조: 자격 증명 정보 검색.)

 /*
     * This Java Quick Start uses the SOAP mode and contains the following JAR files
     * in the class path:
     * 1. adobe-reader-extensions-client.jar
     * 2. adobe-livecycle-client.jar
     * 3. adobe-usermanager-client.jar
     * 4. activation.jar (required for SOAP mode)
     * 5. axis.jar (required for SOAP mode)
     * 6. commons-codec-1.3.jar (required for SOAP mode)
     * 7. commons-collections-3.2.jar  (required for SOAP mode)
     * 8. commons-discovery.jar (required for SOAP mode)
     * 9. commons-logging.jar (required for SOAP mode)
     * 10. dom3-xml-apis-2.5.0.jar (required for SOAP mode)
     * 11. jaxen-1.1-beta-9.jar (required for SOAP mode)
     * 12. jaxrpc.jar (required for SOAP mode)
     * 13. log4j.jar (required for SOAP mode)
     * 14. mail.jar (required for SOAP mode)
     * 15. saaj.jar (required for SOAP mode)
     * 16. wsdl4j.jar (required for SOAP mode)
     * 17. xalan.jar (required for SOAP mode)
     * 18. xbean.jar (required for SOAP mode)
     * 19. xercesImpl.jar (required for SOAP mode)
     *
     * The JBoss files must be kept in the jboss\client folder. You can copy the client folder to
     * your local development environment and then include the 3 JBoss JAR files in your class path
     *
     * These JAR files are in the following path:
     * <install directory>/sdk/client-libs/common
     *
     *
     * <install directory>/jboss/bin/client
     *
     * 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 additional JAR files in the following
     * path
     * <install directory>/sdk/client-libs/thirdparty
     *
     * For information about the SOAP
     * mode and the additional JAR files that need to be included,
     * see "Setting connection properties" in Programming
     * with AEM Forms
     *
     * For complete details about the location of the AEM Forms JAR files,
     * see "Including AEM Forms Java library files" in Programming
     * with AEM Forms
     */
 import com.adobe.livecycle.readerextensions.client.*;
 import java.util.*;
 import java.io.FileInputStream;
 import com.adobe.idp.Document;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
 import com.adobe.idp.dsc.clientsdk.ServiceClientFactoryProperties;

 public class RetrieveCredentialInformation {

     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 a ReaderExtensionsServiceClient object
           ReaderExtensionsServiceClient reClient = new ReaderExtensionsServiceClient(myFactory);

           //Retrieve a rights-enabled PDF document
           FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\LoanUsageRights.pdf");
           Document inputPDF = new Document(fileInputStream);

           //Retrieve credential information
           GetUsageRightsResult usageRightsResult = reClient.getDocumentUsageRights(inputPDF);

           //Get the date after which the credential is no longer valid
           Date endDate = usageRightsResult.getNotAfter();

           //Get the message displayed in Adobe Reader when the rights-enabled
           //document is opened
           String message = usageRightsResult.getMessage();

           //Get usage rights to see if the enableFormFillIn is enabled
           UsageRights myRights = usageRightsResult.getRights();
           boolean ans = myRights.isEnabledFormFillIn();

           if (ans==true)
              System.out.println("The enableFormFillIn usage right is enabled");
           else
             System.out.println("The enableFormFillIn usage right is not enabled");

         }catch (Exception e) {
              e.printStackTrace();
         }

     }
 }
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2