• 大小: 2.19MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-20
  • 语言: Java
  • 标签:

资源简介

通过pdf.js、openoffice服务实现客户端在线预览方案。文件内包含jar、js、公共方法全部内容,部分后台需自己实现。

资源截图

代码片段和文件信息

package com.itown.common.util;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.net.ConnectException;
import java.util.Scanner;


import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.connection.SocketOpenOfficeConnection;
import com.sun.java.swing.plaf.windows.resources.windows;

public class CallOpenofficeService {
/**
 * 功能:开启�?�关闭openoffice服务 使用方法:直接生成该类对�?
 * *****由于本机openoffice安装路径不同,需要更改openoffice的安装路�?
 * 
 * @author botao
 *
 */
private static final long serialVersionUID = -6230719211389128706L;

private Process process = null;

public static CallOpenofficeService instance = null;

public static CallOpenofficeService getInstance() {
if (instance == null) {
instance = new CallOpenofficeService();
}
return instance;
}

/**
 * 将启动程序定义在构�?�函数中,直接生成该类对象,即可启动openoffice服务
 * 
 * @return
 */
public void JavaCallOpenoffice() {
if(isExist()) {
return;
}
Runtime rn = Runtime.getRuntime();
Process p = null;
try {
String toFilePath = System.getProperty(“user.dir“)+“\\TemporaryFolder\\“;
toFilePath = FilePathUtil.getInstance().getRealFilePath(toFilePath);
String osname = System.getProperty(“os.name“);
File file;
if(osname.toLowerCase().startsWith(“win“)) {
toFilePath += “openoprenoffice.bat“;
file = new File(toFilePath);
if (false == file.exists()) {
FileWriter writer = new FileWriter(toFilePath);
writer.write(“@echo   off “);
writer.write(“\r\n “);
writer.write(“cd C:\\Program Files (x86)\\OpenOffice 4\\program“);
writer.write(“\r\n “);
writer.write(
“soffice -headless -accept=sockethost=127.0.0.1port=8100;urp;“ + “ -nofirststartwizard“);
writer.write(“\r\n “);
writer.write(“@echo   on “);
writer.close();
}
p = rn.exec(“cmd.exe /C “+toFilePath);
}else {
toFilePath += “startOpenOffice.sh“;
file = new File(toFilePath);
if (false == file.exists()) {
FileWriter writer = new FileWriter(toFilePath);
writer.write(
“/opt/openoffice4/program/soffice --headless -nologo --accept=\“sockethost=127.0.0.1port=8100;urp;\“ --nofirststartwizard &“);
writer.close();
}
p = rn.exec(“sh “+toFilePath);
}
} catch (Exception e1) {
e1.printStackTrace();
}
}
public boolean isExist() {
boolean bln = false;
OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
        try {
            connection.connect();
            bln=true;
        } catch (ConnectException e) {
            System.err.println(“文件转换出错,请�?查OpenOffice服务是否启动�?“);
            return bln;
        }
return bln;
}
/**
 * 构�?�方法,实现关闭soffice进程
 * 
 * @return
 */
public void DestorySoffice() {
try {
// 判断进程
if(isExist()) {
String cmd = “taskkill /f /im soffice.exe“;// 关闭soffice进

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        841  2017-11-15 13:58  previewFile\.classpath

     文件        911  2017-11-15 13:58  previewFile\.project

     文件        567  2017-11-15 13:58  previewFile\.settings\.jsdtscope

     文件         98  2017-11-15 14:19  previewFile\.settings\org.eclipse.core.resources.prefs

     文件        364  2017-11-15 13:58  previewFile\.settings\org.eclipse.jdt.core.prefs

     文件        485  2017-11-15 13:58  previewFile\.settings\org.eclipse.wst.common.component

     文件        345  2017-11-15 13:58  previewFile\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2017-11-15 13:58  previewFile\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2017-11-15 13:58  previewFile\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件       3879  2017-11-15 14:11  previewFile\build\classes\com\itown\common\util\CallOpenofficeService.class

     文件       1038  2017-11-15 14:02  previewFile\build\classes\com\itown\common\util\FilePathUtil.class

     文件       5256  2017-11-15 14:26  previewFile\build\classes\com\itown\common\util\FileToPdfUtils.class

     文件       3410  2017-11-15 14:11  previewFile\src\com\itown\common\util\CallOpenofficeService.java

     文件        611  2017-11-14 19:43  previewFile\src\com\itown\common\util\FilePathUtil.java

     文件       5400  2017-11-15 14:26  previewFile\src\com\itown\common\util\FileToPdfUtils.java

     文件        476  2017-10-30 17:59  previewFile\WebContent\img\view.png

     文件       1930  2017-11-08 13:44  previewFile\WebContent\img\viewClose.png

     文件     309157  2017-11-02 17:47  previewFile\WebContent\js\pdf.js

     文件    1335118  2017-11-02 17:47  previewFile\WebContent\js\pdf.worker.js

     文件       1593  2017-11-08 14:21  previewFile\WebContent\jsp\attchmentView.jsp

     文件       2376  2017-11-15 14:39  previewFile\WebContent\jsp\main.jsp

     文件        618  2017-11-15 14:49  previewFile\WebContent\jsp\服务器预览pdf方案.txt

     文件         39  2017-11-15 13:58  previewFile\WebContent\meta-INF\MANIFEST.MF

     文件        160  2017-11-06 10:33  previewFile\WebContent\TemporaryFolder\openoprenoffice.bat

     文件        162  2017-11-14 13:52  previewFile\WebContent\TemporaryFolder\startOpenOffice.sh

     文件      32054  2017-11-15 13:59  previewFile\WebContent\WEB-INF\lib\jodconverter-2.2.2.jar

     文件      59197  2017-11-15 13:59  previewFile\WebContent\WEB-INF\lib\juh.jar

     文件     113442  2017-11-15 13:59  previewFile\WebContent\WEB-INF\lib\jurt.jar

     文件      83613  2017-11-15 13:59  previewFile\WebContent\WEB-INF\lib\org.apache.commons.io.jar

     文件     256521  2017-11-15 13:59  previewFile\WebContent\WEB-INF\lib\ridl-3.2.1.jar

............此处省略29个文件信息

评论

共有 条评论