我正在编写一个捆绑在超级jar中的localhost web / websocket应用程序。
这是一个单页网站,HttpServlet
将发送与WebSocket服务器通信的html。我希望页面保留在jar中,让HttpServlet
能够从那里加载它并将其发送给客户端。
这可能吗?如果是这样,怎么样?
答案 0 :(得分:0)
HttpServlet可以返回它想要的任何内容,你需要做的就是在响应中设置你想要的内容。
我猜你实际上正在寻找的答案看起来像这样
public class MyServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) {
PrintWriter out = response.getWriter();
InputStream input = this.class.getResourceAsStream("/path/to/this.html");
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
String line;
while ((line = reader.readLine()) != null) {
out.println(line);
}
}
}
答案 1 :(得分:0)
目前尚不清楚你要求的是什么。
如果您尝试从类路径加载文件(例如在jar中),您可以这样做
public class Test {
public static void main(String[] args) {
InputStream resourceAsStream = Test.class.getResourceAsStream("/test.html");
// use the stream here...
System.out.println(resourceAsStream);
}
}