[英]How do i get a Report from jasperserver?
please help me to fix it, i really have no idea ! 请帮助我修复它,我真的不知道! please
请
/* - To change this template, choose Tools | / *-要更改此模板,请选择工具| Templates - and open the template in the editor.
模板-并在编辑器中打开模板。 */ - package pdfprint;
* /-打包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){ }
} }
i have some error in this line List list = client.list(rd); 我在这一行中有一些错误列表列表= client.list(rd);
error code =no suitable method found for list(pdfprint.ResourceDescriptor) method WSClient.list(String) is not applicable (actual argument pdfprint.ResourceDescriptor cannot be converted to String by method invocation conversion) method WSClient.list(com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor) is not applicable (actual argument pdfprint.ResourceDescriptor cannot be converted to com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor by method invocation conversion) 错误代码=找不到适用于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)
and JasperPrint printer = client.runReport(rd, params,list); 和JasperPrint打印机= client.runReport(rd,params,list);
also have same error 也有同样的错误
error code = no suitable method found for runReport(pdfprint.ResourceDescriptor,Map,List) method WSClient.runReport(com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor,Map,List) is not applicable (actual argument pdfprint.ResourceDescriptor cannot be converted to com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor by method invocation conversion) method WSClient.runReport(com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor,Map) is not applicable (actual and formal argument lists differ in length) 错误代码=找不到适用于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)不适用(实际和正式参数列表的长度不同)
You are passing a pdfprint.ResourceDescriptor
instead of a com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor
. 您正在传递
pdfprint.ResourceDescriptor
而不是com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor
。
Possibly in your IDE you accidentally created a ResourceDescriptor
class in your current package instead of importing the existing one. 可能是在您的IDE中,您不小心在当前包中创建了
ResourceDescriptor
类,而不是导入现有的类。 If so, simply delete the class from your package and add an import statement for the correct one, making sure that it is on the classpath for your project. 如果是这样,只需从包中删除该类,然后为正确的语句添加一个导入语句,并确保该语句位于项目的类路径中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.