Java 创建Word(.doc)文件,将其转换为PDF和HTML,无需打开Office端口

Java 创建Word(.doc)文件,将其转换为PDF和HTML,无需打开Office端口,java,jsp,servlets,openoffice.org,Java,Jsp,Servlets,Openoffice.org,我有一个项目,需要创建一个Word(.doc)文件,其中包含从数据库中获取的特定格式和数据。我想将该文件输出给用户,他将编辑该文件并将其上传回服务器。之后,我想对上传的文件执行以下转换 .doc至.pdf(可在网上下载和查看) .doc to.html(用于网络上的自由文本搜索) 我希望在不打开开放的Office端口的情况下实现这一点。早期版本正在这样做,但当用户越来越多时,打开的端口有崩溃的趋势。所以我想避免这样做。OpenOffice和操作系统都重新安装在其他机器上,并以不同的方式进行了

我有一个项目,需要创建一个Word(.doc)文件,其中包含从数据库中获取的特定格式和数据。我想将该文件输出给用户,他将编辑该文件并将其上传回服务器。之后,我想对上传的文件执行以下转换

  • .doc至.pdf(可在网上下载和查看)
  • .doc to.html(用于网络上的自由文本搜索)
我希望在不打开开放的Office端口的情况下实现这一点。早期版本正在这样做,但当用户越来越多时,打开的端口有崩溃的趋势。所以我想避免这样做。OpenOffice和操作系统都重新安装在其他机器上,并以不同的方式进行了尝试,但每次用户增加时,OO端口都会崩溃

有没有其他方法可以实现这种转换?由于崩溃,无法继续此操作

这是主机:

  • Linux上的Tomcat服务器(RedHat 64位)
  • 该应用程序是用Java(JSP和servlet)开发的
  • 后端是Oracle
所有用户都有:

  • Linux机器,主要是32位Fedora或Suse
非常感谢您的帮助。

您可以使用它来处理实际的.doc文件。对于PDF,还有许多可用的PDF库。问题是很多都不是免费的,但下面列出了一些开源PDF库:


下面是关于Word到HTML的讨论

当所有用户都有linux机器时,为什么要创建一个windows文件???以前版本的程序用于输出.sxw文件…但是用户可能会将这些文件带到其他机器上,然后进行编辑,这可能是一个windows框…并且.sxw文件不会在那里打开。。。正在使用的文件不在我们手中…用户可以使用linux m/c,但由他们使用windows。。。这就是我转向一个通用文件的原因,它可以在.sxw和.doc中打开。我的意思是,人们可以在linux和windows中打开该文件…嗨,dmcnelis…poi.apache的问题是,它无法从头开始创建文件…也就是说,我们需要在服务器中使用一个空的doc文件,它每次都用来创建一个doc文件…这将想象一个问题,一个文件被多个生成文档文件的请求访问,这又是一个问题……为什么不在需要创建新文档时复制该文件,然后删除它?要做到这一点,我首先需要访问一个文件,当多个用户同时访问该文件时,会产生一个问题…那么也可以使用动态创建文档,然后使用UUID保存,然后使用POI打开该文件?java2word生成xml内容,只有在MS.Word中打开时才能查看…但我使用的服务器是linux fedora…因此api没有任何用处,因为在open office中打开文件时,它会显示xml内容及其标记…当用户和主机服务器在microsoft中时,它可以正常工作。。。。。