日期:2014-05-17  浏览次数:20780 次

ireport子报表问题,各位帮帮忙
Struts2中的配置文件
XML code


   <result name="fwjcprint" type="jasper">
               <param name="location">/jasper/fwjcdReport.jasper</param>
               <param name="format">HTML</param>
               <param name="dataSource">bcpjcdVoList</param>
    </result>



Java code

两个JAVABEAN
//主表的数据源
public class BcpjcdVo{
    private String jcdid;
    ......
    List<BcpjcdmxVo> bcpjcdmxList;

.....}

//子报表的数据源
public class BcpjcdmxVo{
    private String mxid;
    private String bcpmc;
    .....}




Action 里的方法
Java code


public String printUI(){
    ......
        String jcdid = ServletActionContext.getRequest().getParameter("jcdid");
        BcpjcdVo jcdVo = fwjcdDaoJDBC.queryBcpjcdByJcdid(jcdid);
        List<BcpjcdmxVo> bcpjcdmxVo = fwjcdDaoJDBC.queryBcpjcdMxByJcdid(jcdid);
        
        ServletActionContext.getRequest().setAttribute("jcdmxList", bcpjcdmxVo );
        jcdVo.setBcpjcdmxList(ycljcdmxVo);//当我设置时就会报错,不设时就没有问题
        
        this.setBcpjcdVo(jcdVo);
        ......
        

        return FWJCPRINT;
    }





错误信息:java.lang.ClassCastException: org.apache.struts2.views.jasperreports.ValueStackDataSource cannot be cast to java.util.List

这个问题困扰了几天了,我也在网上找过,但网上的都是简单的,请各位路过的大虾帮帮忙,分不是问题



------解决方案--------------------
类别转换错误?需要一个java.util.List,传进去的却是org.apache.struts2.views.jasperreports.ValueStackDataSource


没试过s2的.
------解决方案--------------------
类型转换 错误 够明显了