Cài đặt service trên Windows:
soffice -accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager
Kiểm tra cổng TCP mở trên Windows:
netstat -anp tcp hoặc netstat -an | find "8100"
Cài đặt trên Linux
/user/local/oo2/program/soffice -accept="socket,port=8100;urp;StarOffice.ServiceManager" -display :1.0
Kiểm tra cổng trên Linux:
netstat -an | grep 8100
Thư viện cần dùng
dom4j-1.4.jar jooconverter.jar jootemplates.jar juh.jar jurt.jar ognl-2.6.5.jar ridl.jar sandbox.jar unoil.jar xerces-2.6.2.jar xstream-1.0.1.jar
Servlet mẫu:
package net.phpvietnam.java;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.joott.uno.DocumentConverter;
import net.sf.joott.uno.DocumentConverterFactory;
import net.sf.joott.uno.DocumentFormat;
/**
* Servlet implementation class for Servlet: PDFServlet
*
* @web.servlet name = "PDFServlet"
* @web.servlet-mapping url-pattern = "/PDFServlet"
*
*/
public class PDFServlet extends HttpServlet {
/*
* (non-Java-doc)
*
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request,
* HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
System.out.println("Servlet.Start.");
String fileName = request.getParameter("file");
try {
String inputPath = this.getServletContext().getRealPath("/WEB-INF/" + fileName);
System.out.println(inputPath);
File inputFile = new File(inputPath);
String outputPath0 = "/WEB-INF/output.pdf"
+ Thread.currentThread().getId();
String outputPath = getServletContext().getRealPath(outputPath0);
File outputFile = new File(outputPath);
System.out.println(outputPath);
DocumentConverter converter = DocumentConverterFactory.getConverter();
try {
converter.convert(inputFile, outputFile,
DocumentFormat.PDF_WRITER);
} catch (IOException e) {
e.printStackTrace();
}
response.setHeader("Cache-Control", "");
response.setHeader("Pragma", "");
response.setContentType(DocumentFormat.PDF_WRITER.getMimeType());
FileInputStream in = new FileInputStream(outputFile);
OutputStream os = response.getOutputStream();
byte[] buffer = new byte[2048];
int bytes;
while ((bytes = in.read(buffer, 0, 2048)) != -1) {
os.write(buffer, 0, bytes);
}
in.close();
os.close();
outputFile.delete();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("Servlet.End.");
}
}
Phản hồi gần đây