java - 在 tomcat Web 应用程序中打开文件

标签 java file tomcat jersey

我想打开一个文件并返回它的内容。虽然和要打开文件的类在同一个目录下,但是找不到文件。如果你能帮我解决这个问题,那就太好了。

代码如下:

@GET @Produces("text/html") @Path("/{partNO}/") @Consumes("text/html")
public String getPartNoResponseHTML(@PathParam("partNO") String parID) throws WebApplicationException {
PartNoTemplate partNo = getPartNoResponse(parID);

String result = "";

try {
  result = readFile(PART_NO_TEMPLATE_FILE);
} catch (FileNotFoundException e) {
  e.printStackTrace(System.out);
  return e.getMessage() + e.toString();
  // throw new WebApplicationException(Response.Status.NOT_FOUND);
} finally {
  result = result.replace("{partNO}", parID);
  result = result.replace("{inputFormat}", partNo.getFormat().toString());
}

return result;
}

我猜它找不到文件,因为它在 tomcat 上运行。我也在使用 Jersey 和 JAX-RS。谢谢你的帮助,

马克西

最佳答案

如果文件在应用程序 WAR 中(或在 jar 中),您可以尝试使用

InputStream input = servletContext.getClass().getClassLoader().getResourceAsStream("my_filename.txt");

您的问题与(我认为)How can I read file from classes directory in my WAR? 类似

关于java - 在 tomcat Web 应用程序中打开文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14627158/

相关文章:

java - 自己的物联网设备消息处理架构中的设计缺陷

python - 仅在 CSV 文件中查找第一个匹配项

java - 如何压缩代码中生成的文件 (Java)

java - Eclipse项目中的Maven : package javax. ws.rs不存在

java - 无法在 Tomcat 服务器上启动分发包

java - 接受字符串而不丢失换行符,直到按下 -1

java - SQL Server 中的动态 SQL 异常处理

javax.命名.NameNotFoundException : Unable to connect to derby database

java - 片段页面findViewByID无效

C++ ofstream 无法写入文件