Servlets Servlet';s RequestDispatcher.forward()方法不起作用

Servlets Servlet';s RequestDispatcher.forward()方法不起作用,servlets,java-ee-6,requestdispatcher,Servlets,Java Ee 6,Requestdispatcher,我有一个Java应用程序,它使用HttpURLConnection连接到servlet。应用程序在连接到servlet时将要传递给servlet的参数嵌入到url中。因此,servlet可以使用其doGet()访问和处理这些参数。我已经完成了这一部分(我可以访问参数并在servlet中显示它们) 接下来我要做的是将这些参数从servlet传递到JSP。我正在使用request.setAttribute()来完成它。但是即使在RequestDispatcherObj.forward(请求,响应)之

我有一个Java应用程序,它使用HttpURLConnection连接到servlet。应用程序在连接到servlet时将要传递给servlet的参数嵌入到url中。因此,servlet可以使用其doGet()访问和处理这些参数。我已经完成了这一部分(我可以访问参数并在servlet中显示它们)

接下来我要做的是将这些参数从servlet传递到JSP。我正在使用
request.setAttribute()
来完成它。但是即使在
RequestDispatcherObj.forward(请求,响应)
之后,JSP也不会打开。我甚至尝试了
response.sendRedirect(url)

但是,如果我独立运行servlet,上述两个方法(forward()和sendRedirect()都可以正常工作,JSP页面将打开

我不知道我做错了什么

提前感谢你的帮助

代码:

Java应用程序

serverAddress = new URL("http://localhost:8080/WebApp/ServletPath"+"?message1"+"="+message);
(HttpURLConnection)serverAddress.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept-Charset", charset);
connection.setReadTimeout(10000);
connection.connect();
Servlet

message = request.getParameter("message1");//working
request.setAttribute("message1", message);//to be read in the jsp
url="/index.jsp";
RequestDispatcher dispatcher=getServletContext().getRequestDispatcher(url);
dispatcher.forward(request, response);//Works when servlet is run independently but not when the servlet is called from the App

}
HttpURLConnection
不用于更改浏览器的连接和显示内容。它用于在Java应用程序本身中创建HTTP连接


当Java程序连接到URL并读取响应时,浏览器不知道它,也不会神奇地显示任何内容。通过连接到Java应用程序中的URL,您可以执行与浏览器相同的操作,但要在您自己的程序中执行。因此,您可以从连接中读取响应,并显示webapp发送的内容。

一些代码将更加清晰……运行Java应用程序时,您希望发生什么?“当servlet独立运行时”是什么意思?当应用程序向servlet发送请求时,您不希望浏览器显示JSP,是吗?是的,我实际上希望发生这种情况。独立运行是指在eclipse中运行servlet类时。非常感谢您的澄清。是否有其他方法可以执行以下操作:a)从我的java应用程序,将某些参数传递给servlet。b) 在servlet中,处理参数并将处理后的项目发送到在web浏览器中打开的jsp。使用selenium。它允许通过JavaAPI“驱动”浏览器。