我有一个Java类不一个Java servlet
@Path("/helloworld")
public class HelloWorld {
@GET
@Produces(MediaType.APPLICATION_OCTET_STREAM)
@Path("/downloadFile")
public Response getFile() {
File file = new File("roma.txt");
System.out.println("path = " + file.getPath());
System.out.println("absoulte path = " + file.getAbsolutePath());
return Response
.ok(file, MediaType.APPLICATION_OCTET_STREAM)
.header("Content-Disposition",
"attachment; filename=\"" + file.getName() + "\"") // optional
.build();
}
}
我希望阅读位于网络内容中的文件roma.txt
,如下所示:
我使用getServletContext
找到了许多答案,但我不在servlet中。因此,我无法使用该功能。
请帮助我获取roma.txt
文件
我收到文件未找到异常
再次:我向上帝发誓,我不在servlet上,我不知道为什么用户只是使用servlet给我答案。我真的很感激它的帮助,但请先尝试阅读问题,我粗体说我不是在servlet上
答案 0 :(得分:-1)
您可以使用ServletContext。
public Response getFile(@Context ServletContext servletContext) {
File roma = new File(servletContext.getRealPath("roma.txt"));
}
我的意思是,你在服务器上运行不是吗?