Java 在servlet中使用JResultSetDataSource

Java 在servlet中使用JResultSetDataSource,java,jasper-reports,Java,Jasper Reports,现在报告上没有任何内容。我也没有得到任何错误。即使报表上的静态数据也不会出现在报表上。仅生成空文档 我在这件事上浪费了很多时间,请帮帮我 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("application/pdf");

现在报告上没有任何内容。我也没有得到任何错误。即使报表上的静态数据也不会出现在报表上。仅生成空文档

我在这件事上浪费了很多时间,请帮帮我

 protected void doGet(HttpServletRequest request, HttpServletResponse response) 
        throws ServletException, IOException {

    response.setContentType("application/pdf");

    ServletOutputStream servletOutputstream = response.getOutputStream();

    InputStream reportStream = getServletConfig().getServletContext().
        getResourceAsStream("/report-src/Payment.jasper");

    /* Here I am checking whether I am getting refrence of .jasper as 
    stream or not*/
    System.out.println(reportStream);

    try {
        //  Here i am establishing connection with database     

        Connection connection = Dbconn.getConnection();
        Statement stmt = connection.createStatement();

        /* Here I am fetching values using resultset with query
        as I want to give the condition in where clause. At this servlet
        which will be decided on the basis of request comes on this servlet
        so I am using object of this resultset and will  pass it as 
        parameter in the constructor of JRResultSetData    */

        ResultSet rset = stmt.executeQuery(query); 

        JRResultSetDataSource datasource = new JRResultSetDataSource(rset);

        /* In this while loop I am checking whether I am getting  
        values in ResultSet */

        while (rset.next()) {
            System.out.println(rset.getString(2));
        }

        /* Here is the main problem as I think because I am passing object
        of JRResultSet and passing this object in method to generate the report
        in pdf format */
        JasperRunManager.runReportToPdfStream(reportStream, servletOutputstream,
                new HashMap(), datasource);

        servletOutputstream.flush();
        servletOutputstream.close();
    } catch (Exception e) {
        // display stack trace in the browser
        StringWriter stringWriter = new StringWriter();
        PrintWriter printWriter = new PrintWriter(stringWriter);
        e.printStackTrace(printWriter);

        response.setContentType("text/plain");

        response.getOutputStream().print(stringWriter.toString());
    }
}