一个奇怪的问题:用<%=rquest.getParameter("name")%>就好使,用${name}就不灵了。。
以下是主要的Servlet
package com.wdj;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class CheckLogin extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws
IOException,
ServletException{
User u=new User();
String path=null;
u.setName(request.getParameter( "name "));
u.setPass(request.getParameter( "pass "));
if(u.isValidate()){
path= "main.jsp ";
}else{
path= "error.jsp ";
}
request.getRequestDispatcher(path).forward(request,response);
}
public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException{
this.doGet(request,response);
}
}
当前台输入用户名和密码后,判断是否正确,如果正确跳转到main.jsp页,如果不正确跳转到error.jsp页,同时把用户名显示出来
以下是error.jsp页
<h1> ${name}ERROR </h1>
不显示名字,如果我改成
<h1> <%=request.getParameter( "name ")%> ERROR </h1>
就好使了, 为什么尼 ???
------解决方案-------------------- <h1> ${name}ERROR </h1>
我知道这个是php中用的,不知道JSP中是否可用
------解决方案--------------------同问。
我使用EL或者JSTL时遇到的同样的问题
------解决方案--------------------不支持.
------解决方案--------------------jsp没有这个用法
------解决方案--------------------${param.name}
------解决方案--------------------1、先确定容器是否支持EL
2、取得request的参数值用${param.name} 或者${param[ "name "]}
------解决方案--------------------要求容器的版本支持servlet2.4, jsp2.0, 你的web模块也要建servlet2.4,jsp2.0
要使用Tomcat5.0以上, 还有要注意标签库的版本.
------解决方案--------------------还是使用最基本的request.getParameter吧。。。power in simplicity,我的思想
欢迎来我的技术网站 www.techtiger.cn
------解决方案--------------------${param.name}
------解决方案--------------------${name}
这个是用于session的,不是request的.