在休息服务器上使用html资源

时间:2015-01-12 10:16:42

标签: java eclipse rest

我试图使用java REST服务器创建一个网站。为了能够加载预制的html文件,我需要知道它们在我的服务器上保存的位置。我可以在Google或者之前找到关于该主题的任何内容,所以无论是盲人还是答案都很容易在某处提及:D

所以是的,我在外部泽西休息服务器上部署我的.war文件,我希望能够加载附加到该.war文件的文件(包含在WEB-INF文件夹中的eclipse项目中)。我如何访问这些?!

再次感谢您,再次:)

1 个答案:

答案 0 :(得分:0)

如果资源是JSP,您可以执行以下操作:

@GET
public void getHome(@Context HttpServletRequest request, @Context HttpServletResponse response) {
    try {
        ...
        request.getRequestDispatcher("/WEB-INF/home.jsp").forward(request, response);
    } catch (ServletException | IOException e) {
        LOG.log(Level.SEVERE, "There was an error getting the ...", e);
    }
}

如果资源是图像:

@GET
@Path("/get/{name}")
@Produces("image/png")
public Response getFile(@Context ServletContext context, @PathParam("name") String name) {

    String fullPath = context.getRealPath("/WEB-INF/images/" + name);
    File file = new File(fullPath);

    ResponseBuilder response = Response.ok((Object) file);
    response.header("Content-Disposition", "attachment; filename=" + name);
    return response.build();

}