Map<String, Object> request = (Map<String, Object>)ActionContext.getContext().get("request");
public void setRequest(Map<String, Object> request) {
this.request = request;
}
private ArrayList list=new ArrayList();
public ArrayList<Map> show(){
String news;
String time;
String newss;
try{
Connection con=Database.getConnection();
Statement st = con.createStatement();
    ResultSet rs = st.executeQuery("select * from new order by time desc");
 while(rs.next()){
  news=rs.getString("news");
  time=rs.getString("time");
if(news.length()>23) {
  newss = news.substring(0,22)+"..";
}else{
  newss=news;
}
            Content cont=new Content();
cont.setNewss(newss);
cont.setTime(time);
cont.setNews(news);
list.add(cont);
        }
  request.put("lis", list);
 
  }catch (SQLException e){
  e.printStackTrace();
  }
  
  return list;
}<ul><%UserAction us=new UserAction();
      ArrayList lis=us.show();
%>
      <s:iterator value="#request.lis">
        <li><a href="#" title=""><s:property value="#request.lis.newss"/> </a><b><s:property value="#request.lis.time"/></b></li>
      </s:iterator>
  </ul>

解决方案 »

  1.   


    很郁闷楼主这是什么写法,既然以前放到request中,页面干嘛又要用小脚本取,直接循环不就行了
    <ul><%UserAction us=new UserAction();
              ArrayList lis=us.show();
    先在页面输出一下out.print(lis.size);
        %>
                <s:iterator value="#request.lis">
            <li><a href="#" title=""><s:property value="#request.lis.newss"/> </a><b><s:property value="#request.lis.time"/></b></li>
             </s:iterator>
         </ul>
    先看一下到底list到底有没有值,红色代码有必要写吗