将消息从Javaservlet发送到javascript

将消息从Javaservlet发送到javascript,javascript,java,servlets,Javascript,Java,Servlets,我需要帮助。我有一个html文件在我的Web服务器上运行。通过Javascript,我通过xhttp请求将数据发送到同一服务器上的Javaservlet。 在Java的servlet端,我可以通过PrintWriter将消息发送回xhttp请求,如下所示: public void doGet(HttpServletRequest request, HttpServletResponse response) { PrintWriter theMessenger = re

我需要帮助。我有一个html文件在我的Web服务器上运行。通过Javascript,我通过xhttp请求将数据发送到同一服务器上的Javaservlet。 在Java的servlet端,我可以通过PrintWriter将消息发送回xhttp请求,如下所示:

public void doGet(HttpServletRequest request, HttpServletResponse response)
    {
          PrintWriter theMessenger = response.getWriter();
          theMessenger.print("Response data");
    }
一切正常。但是现在我需要向请求的html文件发送一条消息,而不使用servlet响应。 例如,有没有可能通过onmessagehandler将数据(通常是字符串)发送到收集这些消息的html文件

我尝试过这个,但messange从未达到目标:

String targetURL = CSConfig.GetRootURL() + "/myRequestingPage.html";
URL objUrl = new URL(targetURL);
HttpURLConnection urlCon = (HttpURLConnection) objUrl.openConnection();
urlCon.setRequestMethod("POST");
urlCon.setDoOutput(true);
DataOutputStream dataWriter = new DataOutputStream(urlCon.getOutputStream());
dataWriter.writeBytes(messageContent);
dataWriter.flush();
dataWriter.close();

您正在寻找WebSocket。是的,我的环境可能会有一些变化。。。谢谢你,伙计。要记住一件事:html(或其中引用的javascript)不会在服务器上运行。它由服务器提供,并在浏览器中“运行”——在客户端上。这是一个重要的区别,可以真正深入你的大脑。