(我检查了所有其他类似的问题,我是一个新手,让我先说)
我有像这样非常基本的html:https://ibb.co/KVNbv9z和如下所示的servlet代码。
它为字符串q1 :/提供null返回
我认为主要的问题是我正在尝试使用request.getRequestDispatcher("htmlquestions.html").include(request,response);在servlet中,但无法获得返回其结果。我应该怎么做-我正在寻找2天的时间来做这个。非常感谢您的帮助
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.logging.Logger;
public class SecondServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response){
try{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
request.getRequestDispatcher("htmlquestions.html").include(request, response);
String q1 = request.getParameter("Q1");
out.print( " aaaaaaaaaaaaaaaaaaa " + q1 );
out.print("<form action='ThirdServlet'>");
out.print("<input type='submit' value='go'>");
out.print("</form>");
out.close();
}catch(Exception e){System.out.println(e);}
}}
发布于 2019-03-24 20:48:24
在Java EE文档中:
https://javaee.github.io/javaee-spec/javadocs/javax/servlet/RequestDispatcher.html
void include(ServletRequest请求,ServletResponse响应)抛出ServletException,IOException
在响应中包括资源(servlet、JSP页面、HTML文件)的内容。本质上,此方法支持编程式的服务器端包含。
您只是在响应中包含了内容,请求并未更改。请求参数在表单提交时设置。这就是request.getParameter返回null的原因,当servlet接收到请求时,没有设置任何值。
要执行您想要的操作,应该创建一个JSP表单,或者最好是创建一个包含页面呈现内容的JSF表单。我强烈建议您使用JSF,因为使用servlet和/或JSP来创建Web内容有些过时,并且随着内容变得越来越复杂,可能会变得非常混乱。
https://stackoverflow.com/questions/55323696
复制相似问题