API Quick Starts (Code Examples) > DocConverter Service API Quick Starts > Determining PDF/A compliancy using the Java API

Determining PDF/A compliancy using the Java API
The following Java code example determines whether the input PDF document is PDF/A-compliant. The input PDF document that is passed to the DocConverter service is named Loan.pdf. Validation results are written to an XML file named ValidationResults.xml. (See Programmatically Determining PDF/A Compliancy.)
/*
 * This Java Quick Start uses the following JAR files
 * 1. adobe-docconverter-client.jar
 * 2. adobe-livecycle-client.jar
 * 3. adobe-usermanager-client.jar
 * 4. adobe-utilities.jar
 * 5. jbossall-client.jar (use a different JAR file if LiveCycle ES is not deployed
 * on JBoss)
 * 
 * These JAR files are located in the following path:
 * <install directory>/Adobe/LiveCycle8/LiveCycle_ES_SDK/client-libs
 * 
 * For complete details about the location of these JAR files, 
 * see "Including LiveCycle ES library files" in Programming
 * with LiveCycle ES
 */
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 IsDocumentPDFA {
	
	public static void main(String[] args) {
	try{
		//Set connection properties required to invoke LiveCycle ES								
		Properties connectionProps = new Properties();
		connectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_EJB_ENDPOINT, "jnp://localhost:1099");
		connectionProps.setProperty(ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_EJB_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();
	}
  }
}

API Quick Starts (Code Examples) > DocConverter Service API Quick Starts > Determining PDF/A compliancy using the Java API

Programming with LiveCycle ES (LiveDocs)
Adobe LiveCycle ES Update 1

 

Send me an e-mail when comments are added to this page | Comment Report

Current page: http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/help/000029.html