【发布时间】:2012-03-07 14:54:58
【问题描述】:
我正在开发一个 Web 应用程序,它从指定路径读取 excel 文件并将 excel 文件中的数据导入 oracle 数据库。当我在本地 tomcat 机器上运行此功能时,此功能绝对有效,但当我将其部署在远程 tomcat 服务器上时,它会引发以下异常:
java.io.FileNotFoundException: Z:\02_Information_DataBase\ImportingTool\eMan.xls (The system cannot find the path specified)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at modules.report.dao.POIExcelReaderDao.displayFromExcel(POIExcelReaderDao.java:156)
at modules.report.service.POIExcelReaderService.displayFromExcel(POIExcelReaderService.java:91)
at modules.report.controller.ReportController.service(ReportController.java:118)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at modules.index.controller.IndexController.service(IndexController.java:87)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source
远程tomcat服务器对指定文件路径有足够的权限,但即便如此,它仍然说访问被拒绝。
我在互联网上进行了很多冲浪,但徒劳无功....没有任何解决方案可以帮助我。任何人都可以分享有关该问题的信息.....???
【问题讨论】:
-
Z 是映射驱动器吗?运行服务器的帐户是否有权访问该驱动器?
-
你能去
Z:\02_Information_DataBase\ImportingTool\路径并检查eMan.xls是否存在吗?如果不是,请先在代码开头创建文件.. -
是的,运行服务器的帐户对映射的网络驱动器具有足够的权限......并且文件 eMan.xls 存在于指定位置...... ..
标签: java excel filenotfoundexception fileinputstream access-denied