您好Stackoverflow社区,我有一个关于从我的java webapp读取文件的问题。我想从我的webapp中的目录中获取一个文件,然后将其转换为PDF。在我的开发环境(Windows)中一切正常工作但是当我把它放在服务器(LINUX)上时,当服务器到达代码来读取我的doc文件来转换它时,java会抛出这个异常:
com.sun.star.lang.IllegalArgumentException - Unsupported URL <file:///
以下是代码:
fileDocToConvert = new File(GET_REAL_PATH()+repo_Name+slash+fileName);
然后 fileDocToConvert
路径成为:/usr/share/tomcat7/webapps/myapp/repo_name/exemple.doc
我尝试转换时启动了异常:
OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
connection.connect();
DocumentConverter converter = new OpenOfficeDocumentConverter(connection);
//HERE...=> // converter.convert(docFile, pdfFile);
我正在使用:
jodConverter 2.2.1,openOffice 3,Java7,Tomcat 7
我以这种方式启动openOffice服务:
soffice --headless --accept="socket,host=127.0.0.1,port=8100;urp;" --nofirststartwizard
我无法找到解决此问题的方法。
提前谢谢
答案 0 :(得分:3)
我通过安装OpenOffice(Calc,Writer)的一些缺失组件解决了这个问题。问题是OpenOffice无法理解给它的文件的路径。
感谢您的帮助millimoose。
答案 1 :(得分:0)
从不同用户启动多个libreoffice实例并且端口设置冲突时,出现java.lang.Exception: Unsupported URL <file:////...
错误消息。
答案 2 :(得分:0)
对我来说,问题是 OpenOffice 或其他使用 OpenOffice 组件的程序无法理解提供给它的文件路径作为保存文件的位置。将您尝试保存的文件保存在计算机上的其他位置,看看是否有效。