我想打开一个文件并返回它的内容。虽然和要打开文件的类在同一个目录下,但是找不到文件。如果你能帮我解决这个问题,那就太好了。
代码如下:
@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/