如题就是EL表达式不知道为什么接收不到值,request可以
jsp代码:<table align="center" border=1>
   <tr>
      <td>名称</td><td>城市</td><td>票价</td>
   </tr>
   <tr>
      <td>${name[0]}<%=request.getAttribute("city") %></td><td>${city[0]}</td><td>${price[0]}</td>
   </tr>
   <tr>
      <td>${name[1]}</td><td>${city[1]}</td><td>${price[1]}</td>
   </tr>
   <tr>
      <td>${name[2]}</td><td>${city[2]}</td><td>${price[2]}</td>
   </tr>
</table>java代码:package javabean;import java.io.IOException;
import java.util.ArrayList;import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class SetAccess extends HttpServlet { /**
 * 
 */
private static final long serialVersionUID = 1L; @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
String[] name = { "1-兵马俑", "2-黄帝陵", "3-法门寺" }; ArrayList city = new ArrayList();
city.add("西安");
city.add("高陵");
city.add("宝鸡"); ArrayList price = new ArrayList();
price.add("80");
price.add("20");
price.add("500"); req.setAttribute("name", name);
req.setAttribute("city", city);
req.setAttribute("price", price); RequestDispatcher dispactcher = req.getRequestDispatcher("SetAccess.jsp");//转向SetAccess.jsp
dispactcher.forward(req, resp);
}}
配置文件是:
<servlet>
       <display-name>SetAccess</display-name>
       <servlet-name>SetAccess</servlet-name>
       <servlet-class>javabean.SetAccess</servlet-class>
  </servlet>
  <servlet-mapping>
       <servlet-name>SetAccess</servlet-name>
       <url-pattern>/SetAccess</url-pattern>
  </servlet-mapping>拷过去就可以直接运行,求大家帮助,谢谢

解决方案 »

  1.   

    因为  city  你存的是集合 要是 用 El 取的话  导 标签 库   遍历出来就可以了 
    <%@ page language="java" pageEncoding="utf-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">    
        </head>
      
      <body>
      <c:forEach items="${city}" var="a">
     ${a}
    </c:forEach>

      </body>
    </html>如果代码不好使的 可以加我 QQ 250610578 一起探讨 我也是初学者 
      

  2.   

    你的java代码和jsp代码我都测试过了,没有问题。
    因为EL是jsp2.0的技术,所以我怀疑是你的中间件问题,如果你用的是tomcat的话,你应该用tomcat5.0以上版本。jdk5.0以上版本。jsp源码:
    <table align="center" border=1>
    <tr>
    <td>
    名称
    </td>
    <td>
    城市
    </td>
    <td>
    票价
    </td>
    </tr>
    <tr>
    <td>
    ${name[0]}
    </td>
    <td>
    ${city[0]}
    </td>
    <td>
    ${price[0]}
    </td>
    </tr>
    <tr>
    <td>
    ${name[1]}
    </td>
    <td>
    ${city[1]}
    </td>
    <td>
    ${price[1]}
    </td>
    </tr>
    <tr>
    <td>
    ${name[2]}
    </td>
    <td>
    ${city[2]}
    </td>
    <td>
    ${price[2]}
    </td>
    </tr>
    </table>
    页面显示源码: <table align="center" border=1>
    <tr> <td>
    名称
    </td>
    <td>
    城市
    </td>
    <td>
    票价
    </td>
    </tr> <tr>
    <td>
    1-兵马俑
    </td>
    <td>
    西安
    </td>
    <td>
    80
    </td> </tr>
    <tr>
    <td>
    2-黄帝陵
    </td>
    <td>
    高陵
    </td>
    <td>
    20
    </td> </tr>
    <tr>
    <td>
    3-法门寺
    </td>
    <td>
    宝鸡
    </td>
    <td>
    500
    </td> </tr>
    </table>
      

  3.   


    我想你理解LZ问题错了,LZ问的是EL无法正常使用,而你却用JSTL标签来取代jsp片段代码,有些答非所问!
    更何况,JSTL内的值也是用EL表达式赋值,所以EL无法使用依然解决不了LZ问题。
    我怀疑就是中间件(Server)环境上不支持jsp2.0标准!