servlet的一个jsp页面
响应比方说一个servlet text.java返回一个HTML内容到JSP页面的index.jsp。servlet的一个jsp页面
IN index.jsp
<button onclick="location.href='text'">CLICK</button>
IN 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();
你可以继续这样的...
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");
你应该看到如何在web.xml中映射的servlet,寻找一个基本的servlet教程。
你不能给像text.java一个链接,并期望它会触发text.java的servlet。你需要映射一个URL到Servlet类
text.java确定我输入了错误。但如果我在链接写入文本就会调用servlet和有关测绘ÿ该CN做也 – Nil 2012-08-04 15:06:32
JSP是写一个servlet作为模板。 Servlet是服务器端的,通常不会互相调用。这是你的网页(它是通过jsp生成还是不生成),将链接暴露给URL,而不是java文件。点击链接后,浏览器向您的服务器发送请求链接URL的请求。因此,在您的服务器上,此URL(由您决定)必须映射到Servlet
类,该类将处理请求并产生响应。这个URL到servlet映射在WAR的web.xml
文件中配置。
你能解释这一点:的request.getRequestDispatcher(“/ index.jsp的”)向前(请求,响应)。 – Nil 2012-08-04 09:39:05
的getRequestDispatcher(“/ index.jsp的”)将创建对象与JSP页面和forwrd方法的网址会将您的当前请求,响应对象jsp页面。 – 2012-08-04 10:48:37