rpozsgai Posted January 24, 2018 Share Posted January 24, 2018 My java code generates a Jasper PDF fine on my laptop, but when I put it on the customer server, I get this error. I'm testing with the exact same data in both cases.Here is the stack trace:1/23/18 8:51 PM: Exception ThrownContext Path: /webapps/test/webecm.nsfPage Name: /Quote.xspControl id: link24Property: onclickScript interpreter error, line=10, col=5: Error calling method 'reportToFile(string)' on java class 'com.nhkseating.jasper.CreatePDF' 8: //pdf.reportToFile(docnum,testing); 9: print("calling reporttofile for "+docnum)-> 10: pdf.reportToFile(docnum); 11: 12: print("PDF complete, creating preview doc...")javax.faces.FacesException: Error while executing JavaScript action expression at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:102) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:210) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:96) at com.ibm.xsp.controller.FacesControllerImpl.execute(FacesControllerImpl.java:256) at com.ibm.xsp.webapp.FacesServlet.serviceView(FacesServlet.java:228) at com.ibm.xsp.webapp.FacesServletEx.serviceView(FacesServletEx.java:157) at com.ibm.xsp.webapp.FacesServlet.service(FacesServlet.java:160) at com.ibm.xsp.webapp.FacesServletEx.service(FacesServletEx.java:138) at com.ibm.xsp.webapp.DesignerFacesServlet.service(DesignerFacesServlet.java:103) at com.ibm.designer.runtime.domino.adapter.ComponentModule.invokeServlet(ComponentModule.java:576) at com.ibm.domino.xsp.module.nsf.NSFComponentModule.invokeServlet(NSFComponentModule.java:1335) at com.ibm.designer.runtime.domino.adapter.ComponentModule$AdapterInvoker.invokeServlet(ComponentModule.java:853) at com.ibm.designer.runtime.domino.adapter.ComponentModule$ServletInvoker.doService(ComponentModule.java:796) at com.ibm.designer.runtime.domino.adapter.ComponentModule.doService(ComponentModule.java:565) at com.ibm.domino.xsp.module.nsf.NSFComponentModule.doService(NSFComponentModule.java:1319) at com.ibm.domino.xsp.module.nsf.NSFService.doServiceInternal(NSFService.java:662) at com.ibm.domino.xsp.module.nsf.NSFService.doService(NSFService.java:482) at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.doService(LCDEnvironment.java:357) at com.ibm.designer.runtime.domino.adapter.LCDEnvironment.service(LCDEnvironment.java:313) at com.ibm.domino.xsp.bridge.http.engine.XspCmdManager.service(XspCmdManager.java:272)Caused by: com.ibm.xsp.exception.EvaluationExceptionEx: Error while executing JavaScript action expression at com.ibm.xsp.binding.javascript.JavaScriptMethodBinding.invoke(JavaScriptMethodBinding.java:126) at com.ibm.xsp.actions.ExecuteScriptAction.invoke(ExecuteScriptAction.java:78) at com.ibm.xsp.actions.ActionGroup.invoke(ActionGroup.java:135) at com.ibm.xsp.application.ActionListenerImpl.processAction(ActionListenerImpl.java:60) at javax.faces.component.UICommand.broadcast(UICommand.java:324) at com.ibm.xsp.component.UIEventHandler.broadcast(UIEventHandler.java:366) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIDataPanelBase.broadcast(UIDataPanelBase.java:400) at com.ibm.xsp.component.UIViewRootEx.broadcast(UIViewRootEx.java:1535) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:307) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:428) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:94) ... 19 moreCaused by: com.ibm.jscript.InterpretException: Script interpreter error, line=10, col=5: Error calling method 'reportToFile(string)' on java class 'com.nhkseating.jasper.CreatePDF' at com.ibm.jscript.types.JavaAccessObject.call(JavaAccessObject.java:334) at com.ibm.jscript.types.FBSObject.call(FBSObject.java:161) at com.ibm.jscript.ASTTree.ASTCall.interpret(ASTCall.java:197) at com.ibm.jscript.ASTTree.ASTProgram.interpret(ASTProgram.java:119) at com.ibm.jscript.ASTTree.ASTProgram.interpretEx(ASTProgram.java:139) at com.ibm.jscript.JSExpression._interpretExpression(JSExpression.java:435) at com.ibm.jscript.JSExpression.access$1(JSExpression.java:424) at com.ibm.jscript.JSExpression$2.run(JSExpression.java:414) at java.security.AccessController.doPrivileged(AccessController.java:362) at com.ibm.jscript.JSExpression.interpretExpression(JSExpression.java:410) at com.ibm.jscript.JSExpression.evaluateValue(JSExpression.java:251) at com.ibm.jscript.JSExpression.evaluateValue(JSExpression.java:234) at com.ibm.xsp.javascript.JavaScriptInterpreter.interpret(JavaScriptInterpreter.java:222) at com.ibm.xsp.binding.javascript.JavaScriptMethodBinding.invoke(JavaScriptMethodBinding.java:111) ... 35 moreCaused by: java.lang.RuntimeException: error in CreatePDF: at com.nhkseating.jasper.CreatePDF.reportToFile(CreatePDF.java:100) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) at java.lang.reflect.Method.invoke(Method.java:611) at com.ibm.jscript.types.JavaAccessObject.call(JavaAccessObject.java:321) ... 48 moreCaused by: java.lang.IllegalArgumentException: name at sun.misc.URLClassPath$Loader.findResource(URLClassPath.java:689) at sun.misc.URLClassPath.findResource(URLClassPath.java:266) at java.net.URLClassLoader$4.run(URLClassLoader.java:763) at java.security.AccessController.doPrivileged(AccessController.java:298) at java.net.URLClassLoader.findResource(URLClassLoader.java:760) at com.ibm.domino.xsp.module.nsf.ModuleClassLoader$DynamicClassLoader.findResource(ModuleClassLoader.java:519) at java.lang.ClassLoader.getResource(ClassLoader.java:456) at com.ibm.domino.xsp.module.nsf.ModuleClassLoader.getResource(ModuleClassLoader.java:202) at net.sf.jasperreports.engine.util.JRResourcesUtil.findClassLoaderResource(JRResourcesUtil.java:569) at net.sf.jasperreports.repo.DefaultRepositoryService.getInputStream(DefaultRepositoryService.java:110) at net.sf.jasperreports.repo.InputStreamPersistenceService.load(InputStreamPersistenceService.java:47) at net.sf.jasperreports.repo.DefaultRepositoryService.getResource(DefaultRepositoryService.java:159) at net.sf.jasperreports.repo.RepositoryUtil.findInputStream(RepositoryUtil.java:190) at net.sf.jasperreports.repo.RepositoryUtil.getBytesFromLocation(RepositoryUtil.java:206) at net.sf.jasperreports.engine.RenderableUtil.getRenderable(RenderableUtil.java:122) at net.sf.jasperreports.engine.fill.JRFillImage.evaluateImage(JRFillImage.java:584) at net.sf.jasperreports.engine.fill.JRFillImage.evaluate(JRFillImage.java:520) at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:281) at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:504) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillBandNoOverflow(JRVerticalFiller.java:431) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillPageHeader(JRVerticalFiller.java:392) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:253) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:119) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:558) at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:414) at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:122) at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:583) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:929) at com.nhkseating.jasper.CreatePDF.reportToFile(CreatePDF.java:78) ... 53 moreHere is my main code:package com.nhkseating.jasper;import java.io.Serializable;import java.util.HashMap;import java.util.Map;import java.util.ArrayList;import net.sf.jasperreports.engine.JasperExportManager;import net.sf.jasperreports.engine.JasperFillManager;import net.sf.jasperreports.engine.JasperPrint;import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;public class CreatePDF implements Serializable { private static final long serialVersionUID = 1L; public CreatePDF(){ //for managed bean } // public static void main(String[] args) throws JRException, IOException { public void reportToFile(String docnum) { try {System.out.println("CreatePDF passing parameters to Jasper..."); String jasperReport = ""; String subReportItems = ""; String subReportTools = ""; String subReportNotes = ""; String destReport = ""; jasperReport = "D://JReports/NHK_Quote_Java.jasper"; subReportItems = "D://JReports/NHK_Items_Java.jasper"; subReportTools = "D://JReports/NHK_Tools_Java.jasper"; subReportNotes = "D://JReports/NHK_Notes_Java.jasper"; destReport = "D://JReports/"+docnum+".pdf"; System.out.println("setting parameters"); // Parameters for report, pass the file paths to the subreports as parameters on the main report Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("SubReportItems", subReportItems); parameters.put("SubReportTools", subReportTools); parameters.put("SubReportNotes", subReportNotes); // DataSourceSystem.out.println("setting beancol datasrc"); DataBeanList DataBeanList = new DataBeanList(); ArrayList<DataBean> dataList = DataBeanList.getDataBeanList(docnum); JRBeanCollectionDataSource beanColDataSource = new JRBeanCollectionDataSource(dataList);System.out.println("calling jasperfillmgr"); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameters,beanColDataSource); //System.out.println("calling exporttopdf"); // Export to PDF. JasperExportManager.exportReportToPdfFile(jasperPrint,destReport); System.out.println("CreatePDF Complete"); } catch (Exception e) { System.out.println("Error in CreatePDF: " + e); throw new RuntimeException("error in CreatePDF: ", e); } }} The server console shows where the error occurs, on the fillReport line:[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: calling reporttofile for Q00039[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: CreatePDF passing parameters to Jasper...[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: setting parameters[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: setting beancol datasrc[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: calling jasperfillmgr[0B04:000A-0F74] 01/23/2018 08:51:50 PM HTTP JVM: Error in CreatePDF: java.lang.IllegalArgumentException: nameCan someone point me in the right direction as to what may be wrong here? Remember, I can output this same document fine on my laptop, so I'm sure it isn't a 'bad data' issue. Link to comment Share on other sites More sharing options...
rpozsgai Posted January 27, 2018 Author Share Posted January 27, 2018 After serveral days with no response here, I again began scouring the web for any possible hints at a solution. I stumbled across this posthttps://stackoverflow.com/questions/2746561/how-to-show-an-image-on-jasper-reportIt led me to my problem because I had the company logo image hard coded in Jasper.Problem solved. I hope this post helps someone else. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now