DocConverter服務Java API快速入門(SOAP)

DocConverter服務提供Java API快速入門(SOAP)。

快速入門(SOAP模式):使用Java API判斷PDF/A符合性

快速入門(SOAP模式):使用Java API將檔案轉換為PDF/A檔案

AEM Forms操作可使用AEM Forms強制類型API來執行,且連線模式應設為SOAP。

注意

使用AEM表單進行程式設計中的快速入門是以部署在JBoss Application Server和Microsoft Windows作業系統上的Forms Server為基礎。 但是,如果您使用其他作業系統(如UNIX),請用適用作業系統支援的路徑取代Windows專用路徑。 同樣,如果您正在使用其他J2EE應用程式伺服器,請確保指定有效的連接屬性。 請參閱設定連線屬性

快速入門(SOAP模式):使用Java API將文檔轉換為PDF/A文檔

以下Java代碼示例將名為​Loan.pdf​的PDF文檔轉換為保存為名為​LoanArchive.pdf​的PDF檔案的PDF/A文檔。 (請參閱將文檔轉換為PDF/A文檔。)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-docconverter-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.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; 
 import com.adobe.livecycle.docconverter.client.DocConverterServiceClient; 
 import com.adobe.livecycle.docconverter.client.PDFAConversionOptionSpec; 
 import com.adobe.livecycle.docconverter.client.PDFAConversionResult; 
  
 public class CreatePDFADocumentSOAP { 
      
     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 instance 
         ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps); 
          
         //Create a DocConverterServiceClient object 
         DocConverterServiceClient docConverter = new DocConverterServiceClient(myFactory); 
      
         //Reference a PDF document to convert to a PDF/A document  
         FileInputStream myPDF = new FileInputStream("C:\\Adobe\Loan.pdf");  
         Document inDoc = new Document(myPDF);  
          
         //Create a PDFAConversionOptionSpec object and set  
         //tracking information 
         PDFAConversionOptionSpec spec = new PDFAConversionOptionSpec(); 
         spec.setLogLevel("FINE"); 
          
         //Convert the PDF document to a PDF/A document 
         PDFAConversionResult result =  docConverter.toPDFA(inDoc,spec);      
          
         //Save the PDF/A file 
         Document pdfADoc= result.getPDFADocument(); 
         File pdfAFile = new File("C:\\Adobe\LoanArchive.pdf"); 
         pdfADoc.copyToFile(pdfAFile); 
       }catch (Exception e) { 
         e.printStackTrace(); 
     } 
      } 
 }

快速入門(SOAP模式):使用Java API判斷PDF/A符合性

以下Java代碼示例確定輸入的PDF文檔是否與PDF/A相容。 傳遞給DocConverter服務的輸入PDF文檔名為​LoanArchive.pdf。 驗證結果將寫入名為​ValidationResults.xml​的XML檔案。 (請參閱以程式設計方式決定PDF/A相容性。)

 /* 
     * This Java Quick Start uses the SOAP mode and contains the following JAR files 
     * in the class path: 
     * 1. adobe-docconverter-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.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; 
 import com.adobe.livecycle.docconverter.client.DocConverterServiceClient; 
 import com.adobe.livecycle.docconverter.client.PDFAValidationOptionSpec; 
 import com.adobe.livecycle.docconverter.client.PDFAValidationResult; 
  
 public class IsDocumentPDFASOAP { 
      
     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 a DocConverterServiceClient object 
         DocConverterServiceClient docConverter = new DocConverterServiceClient(myFactory); 
      
         //Reference a PDF document used to determine PDF/A compliancy  
         FileInputStream myPDF = new FileInputStream("C:\\Adobe\LoanArchive.pdf");  
         Document inDoc = new Document(myPDF);  
          
         //Create a PDFAValidationOptionSpec object and set  
         //run-time values 
         PDFAValidationOptionSpec spec = new PDFAValidationOptionSpec(); 
         spec.setCompliance(PDFAValidationOptionSpec.Compliance.PDFA_1B); 
         spec.setResultLevel(PDFAValidationOptionSpec.ResultLevel.DETAILED); 
         spec.setLogLevel("FINE"); 
         spec.setIgnoreUnusedResource(true); 
                  
         //Determine if the PDF document is PDF/A compliant 
         PDFAValidationResult result =  docConverter.isPDFA(inDoc,spec)    ; 
                  
         //Get the results of the operation 
         Boolean isPDFA = result.getIsPDFA(); 
          
         //Get XML data that contains validaction results 
         Document validationResults =  result.getValidationLog(); 
         File file= new File("C:\\Adobe\ValidationResults.xml"); 
         validationResults .copyToFile(file); 
      
     }catch (Exception e) { 
         e.printStackTrace(); 
     } 
      } 
 }

本頁內容