API Quick Starts (Code Examples) > Output Service API Quick Starts > Quick Start: Creating search rules using the Java API

Quick Start: Creating search rules using the Java API
The following Java code example creates two text patterns that the Output service searches for. The first text pattern is Mortgage. If found, the Output service uses the form design named Mortgage.xdp. The second text pattern is Automobile. If found, the Output service uses the form design named AutomobileLoan.xdp. If neither text pattern is located, the Output service uses the default form design named Loan.xdp.
/*
 * This Java Quick Start uses the following JAR files
 * 1. adobe-output-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:
 * [LiveCycleES root]/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 com.adobe.livecycle.output.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 CreateSearchRules {
 
	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 object
			ServiceClientFactory myFactory = ServiceClientFactory.createInstance(connectionProps);
				
			//Create an OutputClient object
			OutputClient outClient = new OutputClient(myFactory); 
						  
			//Reference form data
			FileInputStream fileInputStream = new FileInputStream("C:\\Adobe\\Loan.xml");	
			Document inXMData = new Document (fileInputStream);
			
			//Define two text patterns
			Rule mortageRule = new Rule();
			mortageRule.setPattern("Mortgage");
			mortageRule.setForm("Mortgage.xdp");
			
			Rule automobileRule = new Rule();
			automobileRule.setPattern("Automobile");
			automobileRule.setForm("AutomobileLoan.xdp");
			
			//Add the Rules to a List object
			List<Rule> myList = new ArrayList<Rule>();
			myList.add(mortageRule);
			myList.add(automobileRule);
									
			//Define PDF run-time options which includes Search Rules	
			PDFOutputOptionsSpec outputOptions = new PDFOutputOptionsSpec();
			outputOptions.setFileURI("C:\\Adobe\\Loan.pdf");
			outputOptions.setRules(myList);
			outputOptions.setLookAhead(900); 
			
			//Define rendering run-time options
			RenderOptionsSpec pdfOptions = new RenderOptionsSpec(); 
			pdfOptions.setCacheEnabled(new Boolean(true));
				
			//Create a PDF document based on multiple form designs		
			OutputResult outputDocument = outClient.generatePDFOutput(
				TransformationFormat.PDF,
				"Loan.xdp",
				"C:\\Adobe",
				outputOptions,
				pdfOptions,
				inXMData
			);
		
			//Write the results of the operation to OutputLog.xml
			Document resultData = outputDocument.getStatusDoc();
			File myFile = new File("C:\\Adobe\\OutputLog.xml");
			resultData.copyToFile(myFile);
			}
		catch (Exception ee)
				{
					ee.printStackTrace();
				}
		}
}

API Quick Starts (Code Examples) > Output Service API Quick Starts > Quick Start: Creating search rules 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/000110.html