Может ли HttpServlet внутри банки Uber отправить страницу, расположенную внутри банки?
Я пишу локальное веб-приложение / веб-сокет, упакованное в Uber JAR.
Это одностраничный сайт, и HttpServlet
отправит HTML, который связывается с сервером WebSocket. Я бы хотел, чтобы страница осталась внутри банки и HttpServlet
быть в состоянии загрузить его оттуда и отправить клиенту.
Это возможно? Если так, то как?
2 ответа
Решение
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);
}
}
}
Непонятно, что вы просите.
Если вы пытаетесь загрузить файл из classpath (например, в 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);
}
}