JRProperties has become an obsolete, recommended replacement method.

The class JRPropertieswas annotated as deprecated and replaced with JRPropertiesUtil, as indicated in the documentation

I used it to set properties as follows (since it was a class providing static methods),

JRProperties.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
JRProperties.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
   (...)

I believe it is now impossible to set properties.


I found two ways to do this according to the API documentation, namely, directly using the instance JasperReportsContext:

JasperReportsContext jasperReportsContext = DefaultJasperReportsContext.getInstance();
jasperReportsContext.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
jasperReportsContext.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
   (...)

or passing the instance JasperReportsContextto JRPropertiesUtil:

JasperReportsContext jasperReportsContext = DefaultJasperReportsContext.getInstance();
JRPropertiesUtil jrPropertiesUtil = JRPropertiesUtil.getInstance(jasperReportsContext);
jrPropertiesUtil.setProperty("net.sf.jasperreports.awt.ignore.missing.font", "true");
jrPropertiesUtil.setProperty("net.sf.jasperreports.default.font.name", defaultPDFFont);
   (...)

So my question is:

What is the recommended way to set properties for a report printer?

+4
source share
2 answers

, .

.properties jrxml.

  • default.jasperreports.properties

  • / jasperreports.properties,

  • / , jrxml report

    <jasperReport...>
       <property name="net.sf.jasperreports.awt.ignore.missing.font" value="true"/>
       ...
    </jasperReport>
    
  • / , jrxml

    <reportElement>
         <property name="net.sf.jasperreports.export.html.class" value="test"/>
    </reportElement>
    

jrxml,

<propertyExpression name="net.sf.jasperreports.export.xls.sheet.name"><![CDATA[$F{SheetName}]]></propertyExpression>

, IDE: properties-how-use-additional-properties-build-enhanced-reports

, net.sf.jasperreports.awt.ignore.missing.font=true?

, , , . JVM Jasper

jasperreports.properties jrxml

+1

.

, JRPropertiesUtil.setProperty() JasperReportsContext.setProperty().

, .

0

Source: https://habr.com/ru/post/1630049/


All Articles