Springboot整合OpenOffice之爬坑记录

问题:

"org.jodconverter.office.OfficeException: A process with acceptString 'socket,host=127.0.0.1,port=8100,tcpNoDelay=1;urp;StarOffice.ServiceManager' started but its pid could not be found"

网上大都都是说含有OpenOffice路径含有中文的问题

而我的路径是**:C:\Program Files (x86)\OpenOffice 4**

显然没有中文

甚至重新安装OpenOffice依然没用

解决办法:

最后把操作系统的默认语言从中文改为英文

ps -> 万万没想到是操作系统环境问题…

真的很坑人、特地记录下

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我可以帮你解决这个问题。首先,你需要在Linux系统中安装OpenOffice。然后,你可以使用JavaProcessBuilder类来执行OpenOffice的命令行转换操作。下面是一个简单的Spring Boot示例代码,可以将Word文档转换为PDF: ```java import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.springframework.stereotype.Service; @Service public class WordToPdfConverter { public void convert(String inputPath, String outputPath) throws IOException { List<String> command = new ArrayList<String>(); command.add("/usr/bin/soffice"); // OpenOffice安装路径 command.add("--headless"); command.add("--convert-to"); command.add("pdf"); command.add("--outdir"); command.add(outputPath); command.add(inputPath); ProcessBuilder builder = new ProcessBuilder(); builder.command(command); builder.redirectErrorStream(true); Process process = builder.start(); try { process.waitFor(); } catch (InterruptedException e) { e.printStackTrace(); Thread.currentThread().interrupt(); } } } ``` 在这个示例中,我们使用ProcessBuilder类来启动OpenOffice的命令行转换功能。我们将输入文档和输出目录作为参数传递给该方法。最后,我们使用waitFor()方法等待转换进程的完成。 你可以将这个示例代码集成到你的Spring Boot应用程序中,以提供Word到PDF的转换服务。当然,你还需要实现一些安全措施来确保只有授权用户才能访问该服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值