JSP和Javaservlet未将参数传递给JSP文件
我以前没有遇到过这个问题,实际上我有一个不同类的工作实现。但由于某种原因,这个例子失败了 我有一个名为JSP和Javaservlet未将参数传递给JSP文件,java,jsp,tomcat,servlets,jstl,Java,Jsp,Tomcat,Servlets,Jstl,我以前没有遇到过这个问题,实际上我有一个不同类的工作实现。但由于某种原因,这个例子失败了 我有一个名为InfoServlet.java的类: @WebServlet("/info_servlet") public class InfoServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) thr
InfoServlet.java
的类:
@WebServlet("/info_servlet")
public class InfoServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setAttribute("test", "hello world.");
request.getRequestDispatcher("info_servlet.jsp").forward(request, response);
}
}
和我的jsp页面info\u servlet.jsp
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test</title>
</head>
<body>
<h1>HELLO</h1>
<p><c:out value="${test}" /></p>
</body>
</html>
试验
你好
现在,当我转到localhost:8080/MySite/info_servlet.jsp时,我的输出仅为
你好
作为参考,我在java中使用Tomcat7和Servlet3.0。我在传递对象时没有遇到问题,所以我不确定为什么它突然不让我在info\u servlet.jsp
中显示值,一切都按预期进行。您正在servlet中设置“test”属性:如果直接转到.jsp,绕过servlet,则不会设置该属性。因此,它的值将为null
,表达式语言将自动忽略它。一切正常。您正在servlet中设置“test”属性:如果直接转到.jsp,绕过servlet,则不会设置该属性。因此,它的值将为null
,表达式语言将自动忽略它
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Test</title>
</head>
<body>
<h1>HELLO</h1>
<p><c:out value="${test}" /></p>
</body>
</html>