【问题标题】:How do i get a Report from jasperserver?我如何从 jasperserver 获取报告?
【发布时间】:2013-03-27 19:26:52
【问题描述】:

请帮我解决它,我真的不知道!请

/* - 要更改此模板,请选择工具 |模板 - 并在编辑器中打开模板。 */ - 打包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){ }
    } }
  • 我在这一行有一些错误 List list = client.list(rd);

  • 错误代码=没有找到适合列表的方法(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) 不适用 (实际参数列表和形式参数列表的长度不同)

【问题讨论】:

    标签: java jasper-reports jasperserver


    【解决方案1】:

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

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

    【讨论】:

    • 好吧,我明白了.. 但现在我有另一个问题。完成导入后,现在我面临这个问题 org.openide.util.NbPreferences getPreferencesProvider 警告:未找到 Preferences 的 NetBeans 实现,我已经包含 org.openide.util jar 和 org.openide.util.loopup jar ..我不知道要修复它...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多