Java API快速入门(SOAP)可用于生成PDF服务。
快速入门(SOAP模式):使用Java API将Microsoft Word文档转换为PDF文档
快速入门(SOAP模式):使用Java API将HTML内容转换为PDF文档
快速入门(SOAP模式):使用Java API(SOAP模式)将PDF文档转换为RTF文件
AEM Forms操作可以使用AEM Forms强类型API执行,并且连接模式应设置为SOAP。
位于“使用AEM Forms编程”中的快速入门指南基于部署在JBoss Application Server和Microsoft Windows操作系统上的Forms Server。 但是,如果您使用的是其他操作系统(如UNIX),请将特定于Windows的路径替换为适用的操作系统支持的路径。 同样,如果您使用的是其他J2EE应用程序服务器,请确保指定有效的连接属性。 参见 设置连接属性.
以下代码示例转换一个名为的Word文件 Loan.doc 到名为的PDF文档 Loan.pdf. (请参阅 将Word文档转换为PDF文档.)
/*
* This Java Quick Start uses the SOAP mode and contains the following JAR files
* in the class path:
* 1. adobe-generatepdf-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.generatepdf.client.CreatePDFResult;
import com.adobe.livecycle.generatepdf.client.GeneratePdfServiceClient;
public class ConvertWordDocumentSOAP {
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 GeneratePdfServiceClient object
GeneratePdfServiceClient pdfGenClient = new GeneratePdfServiceClient(myFactory);
//Get a Microsoft Word file document to convert to a PDF document
String inputFileName = "C:\\Adobe\\Loan.doc";
FileInputStream fileInputStream = new FileInputStream(inputFileName);
Document inDoc = new Document(fileInputStream);
//Set createPDF2 parameter values
String adobePDFSettings = "Smallest_File_Size";
String securitySettings = "No Security";
String fileTypeSettings = "Filetype Settings";
//Convert the Word document to a PDF document
CreatePDFResult result = pdfGenClient.createPDF2(
inDoc,
inputFileName,
fileTypeSettings,
adobePDFSettings,
securitySettings,
null,
null);
//Get the newly created document
Document createdDocument = result.getCreatedDocument();
//Save the converted PDF document as a PDF file
createdDocument.copyToFile(new File("C:\\Adobe\\Loan.pdf"));
}
catch (Exception e) {
System.out.println("Error OCCURRED: " + e.getMessage());
}
}
}
以下Java代码示例将位于https://www.adobe.com的HTML内容转换为名为的PDF文档 AdobeHTML.pdf. (请参阅 将HTML文档转换为PDF文档.)
/*
* This Java Quick Start uses the SOAP mode and contains the following JAR files
* in the class path:
* 1. adobe-generatepdf-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.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.generatepdf.client.GeneratePdfServiceClient;
import com.adobe.livecycle.generatepdf.client.HtmlToPdfResult;
public class ConvertHTMLSOAP {
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 GeneratePdfServiceClient object
GeneratePdfServiceClient pdfGenClient = new GeneratePdfServiceClient(myFactory);
//Get an HTML document to convert to a PDF document a
String inputFileName = "https://www.adobe.com";
String securitySettings = "No Security";
String fileTypeSettings = "Standard";
//Convert HTML content to a PDF document
HtmlToPdfResult result = pdfGenClient.htmlToPDF2(
inputFileName,
fileTypeSettings,
securitySettings,
null,
null);
//Get the newly created document
Document createdDocument = result.getCreatedDocument();
//Save the PDF document as a PDF file
createdDocument.copyToFile(new File("C:\\AdobeHTML.pdf"));
}
catch (Exception e) {
System.out.println("Error OCCURRED: " + e.getMessage());
}
}
}
以下代码示例转换名为的PDF文档 Loan.pdf 到名为的RTF文档 Loan.rtf. (请参阅 将PDF文档转换为非图像格式.)
/*
* This Java Quick Start uses the SOAP mode and contains the following JAR files
* in the class path:
* 1. adobe-generatepdf-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.generatepdf.client.ConvertPDFFormatType;
import com.adobe.livecycle.generatepdf.client.ExportPDFResult;
import com.adobe.livecycle.generatepdf.client.GeneratePdfServiceClient;
public class GeneratePdf_ExportPDFSOAP {
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 factory = ServiceClientFactory.createInstance(connectionProps);
//Create a GeneratePdfServiceClient object
GeneratePdfServiceClient pdfGenClient = new GeneratePdfServiceClient(factory);
//Get a PDF document to convert to an RTF document
String inputFileName = "C:\\Adobe\\Loan.pdf.pdf";
FileInputStream fileInputStream = new FileInputStream(inputFileName);
Document inDoc = new Document(fileInputStream);
//Convert a PDF document to a RTF document
ExportPDFResult result = pdfGenClient.exportPDF2(
inDoc,
inputFileName,
ConvertPDFFormatType.RTF,
null);
//Get the newly created RTF document
Document createdDocument = result.getConvertedDocument();
//Save the RTF file
createdDocument.copyToFile(new File("C:\\Adobe\\Loan.pdf.rtf"));
}
catch (Exception e) {
System.out.println("Error OCCURRED: " + e.getMessage());
}
}
}