解决方案 »

  1.   

    List<Emailver> friendslist=baseDao.getNamedQuery(hql, null);
    Emailver item=(Emailver)friendslist.get(0);
    看下 friendslist 有数据不
      

  2.   

    这是getNamedQuery()方法的源代码,看不出到底是哪里的问题,麻烦帮忙看一下
    public <E extends Object> List<E> getNamedQuery(final String hql,
    final Map<String, ? extends Object> params)
    throws HibernateException { return (List<E>) new HibernateTemplate().run(session, autocommit,
    new HibernateDoWork() { public Object execute(Session session)
    throws HibernateException {
    Query q = session.createQuery(hql);
    if (null != params && params.size() > 0) {
    for (Iterator<?> i = params.entrySet().iterator();i.hasNext();) {
    Map.Entry<String, ? extends Object> entry = (Map.Entry<String, ? extends Object>)i.next();
                       setParameterValue(q, entry.getKey(), entry
    .getValue());
    }
    }
    return q.list();
    }
    });
    }
      

  3.   

    你debug 下啊。 数据是什么。
      

  4.   

    Emailver item=(Emailver)friendslist.get(0); 这个语句有问题,
    在使用list的使用 判断一下,size()>0 
    更多的java学习资料请上www.ppst.cc
      

  5.   


    数组越界嘛,在所有用到数组或者list的地方判断下数组的长度再取值!
      

  6.   

    就是定义了一个Map值对啊,前边的关键字是hql语句,后边的值是Object的泛型类啊
      

  7.   

    就是定义了一个Map值对啊,前边的关键字是hql语句,后边的值是Object的泛型类啊
    我在引用friendlist之前也给Map的键复制了啊,按说不应该是空的啊
      

  8.   

    debug  就能看得出来了
      

  9.   

    debug之后,他说我Java这个文件有错
    package com.news.server.filter;import java.io.IOException;import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    /*
     * 
     * 过滤器过滤中文乱码
     * */
    public class CharacterEncodingFilter implements Filter {
    /**
     * Take this filter out of service.
     */
    public void destroy() {
    } /**
     * Select and set (if specified) the character encoding to be used to
     * interpret request parameters for this request.
     */
    public void doFilter(ServletRequest request, ServletResponse response,
    FilterChain chain) throws IOException, ServletException {
    request.setCharacterEncoding("utf-8");
    // 传递控制到下一个过滤器
    chain.doFilter(request, response);
    } public void init(FilterConfig filterConfig) throws ServletException {
    }}说这个过滤器的chain.doFilter(request, response);有错,可是我看了这个doFilter()的用法,没错啊!