繁体   English   中英

我如何从jasperserver获取报告?

[英]How do i get a Report from jasperserver?

请帮助我修复它,我真的不知道!

/ *-要更改此模板,请选择工具| 模板-并在编辑器中打开模板。 * /-打包pdfprint;

import com.jaspersoft.ireport.jasperserver.JServer; import
com.jaspersoft.ireport.jasperserver.ws.WSClient; import
java.util.HashMap; import java.util.*; import
net.sf.jasperreports.engine.JasperPrint; import
net.sf.jasperreports.engine.JasperReport; import
net.sf.jasperreports.engine.export.JRPrintServiceExporter; import
net.sf.jasperreports.engine.export.JRPrintServiceExporterParameter;
import net.sf.jasperreports.view.JasperViewer;



public class Pdfprint {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
      try{
    JServer server = new JServer();
    server.setUrl("http://localhost:8080/jasperserver/services/repository");
    server.setUsername("jasperadmin");
    server.setPassword("jasperadmin");


    ResourceDescriptor rd = new ResourceDescriptor();
    rd.setUriString("/solucisv3_testing/jr_testing_print");

    WSClient client = new WSClient(server);
    List list = client.list(rd);

      Map params = new HashMap();
      params.put("Plb_Company", "Company");
      params.put("Plb_Address", "Address");
      params.put("Plb_Title","Title");
      params.put("PCondition","SELECT * FROM v_doc_ticketing  WHERE f_doc_no='MYCSB0000096'");

     JasperPrint printer = client.runReport(rd, params);
     JasperViewer.viewReport(printer, false,Locale.GERMAN);


     JRPrintServiceExporter exporter;
     exporter = new JRPrintServiceExporter();
     //exporter.setParameter(JRExporterParameter.JASPER_PRINT, jp);
     exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PAGE_DIALOG,
Boolean.FALSE);
     exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PRINT_DIALOG,
Boolean.TRUE);
     exporter.setParameter(JRPdfExporterParameter.PDF_JAVASCRIPT,"this.print({bUI:
false,bSilent: true,bShrinkToFit: true});");
     exporter.exportReport(); } catch(Exception ex){ }
    } }
  • 我在这一行中有一些错误列表列表= client.list(rd);

  • 错误代码=找不到适用于list(pdfprint.ResourceDescriptor)的合适方法方法WSClient.list(String)不适用(实际参数pdfprint.ResourceDescriptor无法通过方法调用转换转换为String)方法WSClient.list(com.jaspersoft.jasperserver .api.metadata.xml.domain.impl.ResourceDescriptor)不适用(无法通过方法调用转换将实际参数pdfprint.ResourceDescriptor转换为com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor)

  • 和JasperPrint打印机= client.runReport(rd,params,list);

  • 也有同样的错误

  • 错误代码=找不到适用于runReport(pdfprint.ResourceDescriptor,Map,List)的合适方法方法WSClient.runReport(com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor,Map,List)不适用(实际pdfprint.ResourceDescriptor参数不能通过方法调用转换转换为com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor方法WSClient.runReport(com.jaspersoft.jasperserver.api.metadata.xml.domain.impl .ResourceDescriptor,Map)不适用(实际和正式参数列表的长度不同)

您正在传递pdfprint.ResourceDescriptor而不是com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor

可能是在您的IDE中,您不小心在当前包中创建了ResourceDescriptor类,而不是导入现有的类。 如果是这样,只需从包中删除该类,然后为正确的语句添加一个导入语句,并确保该语句位于项目的类路径中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM