-1

假设 servlet text.java 将 html 内容返回到 jsp 页面 index.jsp。

index.jsp

<button onclick="location.href='text'">CLICK</button>

text.java

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    try {
     out.println("<b>HELLO</b>");
    } finally { 
        out.close();
    }
} 

现在我们说servlet响应web浏览器的请求,那么在点击按钮后为什么在url而不是jsp页面中有servlet的名称并且控制没有返回到jsp页面。

这只能用 ajax (formelement.innerHTML= ob.responseText()) 吗?//其中 var ob = new XMLHttpRequest();

4

3 回答 3

4

你可以这样进行...

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    String str = "<b>heloo</b>";
    request.setAttribute("result", str);
    request.getRequestDispatcher("/index.jsp").forward(request, response);
}

在 jsp 中只需通过以下方式获得结果:

request.getAttribute("result");
于 2012-08-04T09:37:16.527 回答
2

JSP 是作为模板编写的 servlet。Servlet 是服务器端的,通常不会相互调用。这是您的网页(无论它是否通过 jsp 生成),它公开了指向URL 的链接,而不是 java 文件。单击该链接时,您的浏览器会向您的服务器发送一个请求以获取该链接的 URL。因此,在您的服务器上,此 URL(由您定义)必须映射到Servlet将处理请求并产生响应的类。web.xml在您的 WAR 文件中配置此 URL 到 servlet 的映射。

于 2012-08-04T09:44:20.713 回答
0

你应该看到如何在 web.xml 中映射 servlet,搜索基本的 servlet 教程。

您不能提供像 text.java 这样的链接并期望它会触发 text.java servlet。您需要将 url 映射到 servlet 类

于 2012-08-04T09:33:09.563 回答