Skip to main content
17-Peridot
June 2, 2022
Solved

Change Request Summary Report fails

  • June 2, 2022
  • 4 replies
  • 3265 views

Hi team

The Change Request Summary Report (This report provides a summary of all the Affected Objects of a Change Request.) fails. The report window has a spinner which never ends. 

In the Persisted Log Events window I click through to an error page.

there is:

Message: getJasperPrint(): Error While executing Jasper report

The stack trace is below.

The problem started after the upgrade to WC 12.0.2, which introduced JasperReports.

Go into the 'Report Management' window and click on 'edit this report': 

Input Page:  netmarkets/jsp/changeReports/ChangeRequestSummaryReport.jsp

Resource Bundle: com.ptc.windchill.enterprise.change2.reports.change2ReportsResource

 

What are my options to debug this?

thanks -- Rick

 

 

Throwable: 

net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new net.sf.jasperreports.engine.data.JRXmlDataSource($P{WINDCHILL_URL}+"?proc=com_ptc_windchill_enterprise_report_ReportTask%23ChangeRequestSummaryHeader&contextOid="+$P{contextOid}+"&isDraft=0&uid="+$P{USERNAME}+"&locale="+$P{LOCALE},"/dataset/data/row")
	at net.sf.jasperreports.engine.fill.JREvaluator.handleEvaluationException(JREvaluator.java:294)
	at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:328)
	at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:673)
	at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:641)
	at net.sf.jasperreports.engine.fill.JRFillElement.evaluateExpression(JRFillElement.java:1173)
	at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:529)
	at net.sf.jasperreports.components.table.fill.FillTableSubreport.evaluateSubreport(FillTableSubreport.java:112)
	at net.sf.jasperreports.components.table.fill.FillTable.evaluate(FillTable.java:134)
	at net.sf.jasperreports.engine.fill.JRFillComponentElement.evaluate(JRFillComponentElement.java:110)
	at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:383)
	at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:548)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2600)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:825)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:266)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:110)
	at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:621)
	at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:433)
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:162)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:651)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:1020)
	at com.ptc.wbr.core.execution.JasperReportExecutor.getJasperPrint(JasperReportExecutor.java:406)
	at com.ptc.wbr.client.ReportClientHelper$1.run(ReportClientHelper.java:203)
	at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.JRException: Error opening input stream from URL: domain.com
	at net.sf.jasperreports.repo.DefaultRepositoryService.getInputStream(DefaultRepositoryService.java:139)
	at net.sf.jasperreports.repo.InputStreamPersistenceService.load(InputStreamPersistenceService.java:51)
	at net.sf.jasperreports.repo.DefaultRepositoryService.getResource(DefaultRepositoryService.java:196)
	at net.sf.jasperreports.repo.RepositoryUtil.findInputStream(RepositoryUtil.java:195)
...

 

Best answer by rleir

The Jasper server process (running in the WC server machine) makes a HTTPS request to WC.

 

We had an incorrect cert in the machine, and Jasper uses that bad cert when starting the HTTPS request so WC rejects the connection.  Now, where was that cert file on the server ...  In the Java security directory.

4 replies

rleir17-PeridotAuthor
17-Peridot
June 13, 2022

 

Looking further down the stack trace, there seems to be a security error, is there perhaps an error in my config for Jasper?

 

Message: 	getJasperPrint(): Error While executing Jasper report
Throwable: 	net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new net.sf.jasperreports.engine.data.JRXmlDataSource($P{WINDCHILL_URL}+"?proc=com_ptc_windchill_enterprise_report_ReportTask%23ChangeRequestSummaryHeader&contextOid="+$P{contextOid}+"&isDraft=0&uid="+$P{USERNAME}+"&locale="+$P{LOCALE},"/dataset/data/row")
	at net.sf.jasperreports.engine.fill.JREvaluator.handleEvaluationException(JREvaluator.java:294)
	
Caused by: net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.JRException: Error opening input stream from URL: https://domain.com:443/Windchill/servlet/ReportServlet?proc=com_ptc_windchill_enterprise_report_ReportTask%23ChangeRequestSummaryHeader&contextOid=VR:wt.change2.WTChangeRequest2:nnnnnnn&isDraft=0&uid=Administrator&locale=en_US.
	at net.sf.jasperreports.repo.DefaultRepositoryService.getInputStream(DefaultRepositoryService.java:139)
	
Caused by: net.sf.jasperreports.engine.JRException: Error opening input stream from URL: https://domain.com:443/Windchill/servlet/ReportServlet?proc=com_ptc_windchill_enterprise_report_ReportTask%23ChangeRequestSummaryHeader&contextOid=VR:wt.change2.WTChangeRequest2:nnnnnnn&isDraft=0&uid=Administrator&locale=en_US.
	at net.sf.jasperreports.engine.util.JRLoader.getInputStream(JRLoader.java:343)
	
Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
	at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:131)
	
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
	at java.base/sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:439)
	
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
	at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)

 

rleir17-PeridotAuthorAnswer
17-Peridot
August 2, 2022

The Jasper server process (running in the WC server machine) makes a HTTPS request to WC.

 

We had an incorrect cert in the machine, and Jasper uses that bad cert when starting the HTTPS request so WC rejects the connection.  Now, where was that cert file on the server ...  In the Java security directory.

12-Amethyst
March 16, 2023

Can you please guide me with the location of the cert file?