在使用JCOM的时候rm = new ReleaseManager();// 查找JCOM能够操作的组件
excel = new ExcelApplication(rm);// 创建可加载excel组件
创建ExcelApplication的实例的时候,出现如下错误:
"jp.ne.so_net.ga2.no_ji.jcom.JComException:
createInstance() failed HRESULT=0x800401F3L"问题解决?(安装了office之后就可以了)
在网上收索的解决方法是:
1:与Jcom的版本有关系(最低版本为2.2.0-1以上);
2:也与Office版本有关系,必须最低版本为office2003以上;
3:操作系统和开发环境要统一协调(如Tomcat、Java Jdk、MyEclipse都要搭配协调);
4:将jcom.dll这个组件分别放于tomcat bin目录下;jdk bin目录下;jre bin目录下;
还有系统System32的文件夹下;这样就会大功告成
本人的解决办法是:由于没有安装office软件,使用的是PWS软件,因而,出现以上错误,安装office之后(2007版的),可以正常的创建该实例。
函数功能:将Office文档(word,excel,powerpoint)转为pdf
环境:jcom(日本的一个开源项目)
条件:安装ms office以及acrobat(不是reader)
package com.zms.office2pdf;
import jp.ne.so_net.ga2.no_ji.jcom.IDispatch;
import jp.ne.so_net.ga2.no_ji.jcom.ReleaseManager;
public class Office2Pdf {
public void createPDF(String officePath,String pdfPath) throws Exception {
ReleaseManager rm = null;
IDispatch app = null;
try {
rm=new ReleaseManager();
app = new IDispatch(rm, "PDFMakerAPI.PDFMakerApp");
app.method("CreatePDF",new Object[]{officePath,pdfPath});
} catch (Exception e) {
throw e;
} finally {
try {
app=null;
rm.release();
rm = null;
} catch (Exception e) {
throw e;
}
}
}
public static void main(String[] args) throws Exception {
Office2Pdf one=new Office2Pdf();
one.createPDF("D:\\temp\\w.xls","C:\\zms\\temp\\c.pdf");
}
}
运行报错:
jp.ne.so_net.ga2.no_ji.jcom.JComException: createInstance() failed HRESULT=0x800401F3L
原因:要安装Acrobat_Pro软件且注册