Jump to content

Recommended Posts

Posted

Hi

I have a parameter mand_id

    <parameter name="mand_id" class="java.lang.Integer">
        <parameterDescription><![CDATA[MandId]]></parameterDescription>
    </parameter>


and I pass this parameter to a subreport.
                <subreportParameter name="MAND_ID">
                    <subreportParameterExpression><![CDATA[new Integer(Integer.valueOf($P{mand_id}))]]></subreportParameterExpression>
                </subreportParameter>

If I run this report on windows in the jaspersoft Studio, it runs perfect.

 

runnning on linux I get this exception and I don't know how to fix.

java.lang.RuntimeException: net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new Integer(Integer.valueOf($P{mand_id}))
        at com.swisslog.antalis.genpdf.GenPdf.print(GenPdf.java:444) ~[GenPdf.jar:SVN: 436767, Build: 2020-12-09T16:22:26]
        at com.swisslog.antalis.genpdf.GenPdf.printVersandlabelReport(GenPdf.java:328) ~[GenPdf.jar:SVN: 436767, Build: 2020-12-09T16:22:26]
        at com.swisslog.antalis.genpdf.GenPdf.run(GenPdf.java:156) ~[GenPdf.jar:SVN: 436767, Build: 2020-12-09T16:22:26]
        at com.swisslog.antalis.genpdf.GenPdf.main(GenPdf.java:86) ~[GenPdf.jar:SVN: 436767, Build: 2020-12-09T16:22:26]
Caused by: net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new Integer(Integer.valueOf($P{mand_id}))
        at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:291) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:618) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRCalculator.evaluate(JRCalculator.java:586) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillSubreport.getParameterValues(JRFillSubreport.java:686) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateParameterValues(JRFillSubreport.java:484) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:464) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(JRFillSubreport.java:351) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:281) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:504) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2029) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:755) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:262) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:122) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:555) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:396) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:91) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:456) ~[jasperreports-6.1.1.jar:6.1.1]
        at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:863) ~[jasperreports-6.1.1.jar:6.1.1]
        at com.swisslog.antalis.genpdf.GenPdf.print(GenPdf.java:396) ~[GenPdf.jar:SVN: 436767, Build: 2020-12-09T16:22:26]
        ... 3 common frames omitted
Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
        at versandlabel_1607957341918_955029.evaluate(versandlabel_1607957341918_955029:363) ~[na:na]
        at net.sf.jasperreports.engine.fill.JREvaluator.evaluate(JREvaluator.java:277) ~[jasperreports-6.1.1.jar:6.1.1]
        ... 21 common frames omitted

 

  • Replies 2
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted

in the subreport mand_id is also INTEGER

 <parameter name="MAND_ID" class="java.lang.Integer">
  <parameterDescription><![CDATA[mand_id aus Hauptreport]]></parameterDescription>
 </parameter>

 

 

even if I pass directly the parameter mand_id from the main report (which is also Integer) I get the same error, but only on linux.

 

anyway, I found a workaround for my problem. I defined a Variable

 <variable name="mandIdInt" class="java.lang.Integer">
  <variableExpression><![CDATA[new Integer(Integer.valueOf($P{mand_id}))]]></variableExpression>
 </variable>
 

and pass this to the subreport.

 

best rené

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...