奇怪的问题? 估计是文件放的目录不对吧,直接本地打开是可以,但是路径不对tomcat就没有加载进去吧。。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没太看明白我的意思,在将tomcat做成服务启动时,不能打开;tomcat直接采用start.bat能打开;文件的存放位置是一样的 以服务方式启动是没有Desktop的 肯定是路径的问题。你本地的机子上有E:\\workplace\\yijian\\WebRoot\\help.chm,但是服务器上有这个路径吗? 把chm文件扔到tomcat里面,相对路径访问 你的项目部署到tomcat之后,目录有可能发生改变了。不建议你用手写的文件路径,为什么不用servletContext获得路径呢。 你的项目部署到tomcat之后,目录有可能发生改变了。不建议你用手写的文件路径,为什么不用servletContext获得路径呢。try { String path=application.getRealPath("/"); File helpFile = new File(path+"help.chm"); Desktop.getDesktop().open(helpFile);} catch (Exception e) { System.out.print("打开帮助文档异常");}一样是有问题的 不是放在服务器上,是将tomcat做成服务后 默认windows是不允许服务进行桌面交互的,所以无法打开文件,把那个允许桌面交互的选上就可以了。 尝试了,不行哈,大神我win7的系统能打开,先是弹个交互神马的对话框,提示你有服务要进行桌面交互,确定后会黑屏,最后会只显示个记事本。ps:我打开的是文本文档 写个bat脚本,通过运行脚本打开帮助文档,这样子呢? 1.请确定Desktop在你的平台上是支持的2.请确定file确实存在3.请确定是否抛出了异常,根据异常检查问题(比如文件没有默认打开方式,文件不可读) if (!Desktop.isDesktopSupported()) { System.out.println("Desktop not supported."); return; } Desktop desktop = Desktop.getDesktop(); File file = new File("D:\\test.chm"); if (file.exists()) { desktop.open(file); System.out.println("Done."); } else { System.out.println("File not exist."); } error while trying to login to database 一个关于数据源连接数据库的问题,大侠帮忙啊 帮忙看看这是什么异常? 急》》用AJAX验证用户唯一性的问题 关于下载的一点小疑惑 求数据同步解决方案 哪有 Java Web Start 安装程序下载啊? 数据库问题 JSP中去除IE的菜单,工具条,地址栏? 百分送出!Java程序中读Oracle表数据是乱码 在线等!!! java bbs hibernate修改数据后查询错误
String path=application.getRealPath("/");
File helpFile = new File(path+"help.chm");
Desktop.getDesktop().open(helpFile);
} catch (Exception e) {
System.out.print("打开帮助文档异常");
}一样是有问题的
默认windows是不允许服务进行桌面交互的,所以无法打开文件,把那个允许桌面交互的选上就可以了。
尝试了,不行哈,大神我win7的系统能打开,先是弹个交互神马的对话框,提示你有服务要进行桌面交互,确定后会黑屏,最后会只显示个记事本。ps:我打开的是文本文档
2.请确定file确实存在
3.请确定是否抛出了异常,根据异常检查问题(比如文件没有默认打开方式,文件不可读)
if (!Desktop.isDesktopSupported()) {
System.out.println("Desktop not supported.");
return;
}
Desktop desktop = Desktop.getDesktop();
File file = new File("D:\\test.chm");
if (file.exists()) {
desktop.open(file);
System.out.println("Done.");
} else {
System.out.println("File not exist.");
}