iTextPDF: License File issue

Viewed 58

I am using the commercial version of iTextPDF(7.2.3) and html2pdf(4.0.3) to generate a PDF file. But when checking the license key I get the following error:

Caused by: java.lang.NoSuchFieldError: _objectFieldValueSeparatorWithSpaces
        at com.itextpdf.licensing.base.util.JsonUtil$CustomPrettyPrinter.<init>(JsonUtil.java:138)
        at com.itextpdf.licensing.base.util.JsonUtil.serializeToString(JsonUtil.java:47)
        at com.itextpdf.licensing.base.util.SigningUtil.getExpectedSignature(SigningUtil.java:67)
        at com.itextpdf.licensing.base.util.SigningUtil.checkSignature(SigningUtil.java:52)
        at com.itextpdf.licensing.base.actions.LoadLicenseEvent.validateLicenceFile(LoadLicenseEvent.java:118)
        at com.itextpdf.licensing.base.actions.LoadLicenseEvent.getProperLicenseFile(LoadLicenseEvent.java:100)
        at com.itextpdf.licensing.base.actions.LoadLicenseEvent.<init>(LoadLicenseEvent.java:42)
        at com.itextpdf.licensing.base.LicenseKey.loadLicenseFile(LicenseKey.java:151)
        at com.itextpdf.licensing.base.LicenseKey.loadListOfLicenses(LicenseKey.java:216)
        at com.itextpdf.licensing.base.LicenseKey.loadLicenseFile(LicenseKey.java:129)
        at com.itextpdf.licensing.base.LicenseKey.loadLicenseFile(LicenseKey.java:88)

pom.xml:

<repositories>   
        <repository>
            <id>itext</id>
            <name>iText Repository - releases</name>
            <url>https://repo.itextsupport.com/releases</url>
        </repository>
</repositories>
...
<properties>
     <itextpdf.version>7.2.3</itextpdf.version>
     <html2pdf.version>4.0.3</html2pdf.version>
     <itext.licensekey.version>4.0.3</itext.licensekey.version>
</properties>
<dependencies>
<dependency>
      <groupId>com.itextpdf.licensing</groupId>
      <artifactId>licensing-base</artifactId>
      <version>${itext.licensekey.version}</version>
</dependency>
<dependency>
      <groupId>com.itextpdf</groupId>
      <artifactId>itext7-core</artifactId>
      <version>${itextpdf.version}</version>
      <type>pom</type>
</dependency>
<dependency>
      <groupId>com.itextpdf</groupId>
      <artifactId>html2pdf</artifactId>
      <version>${html2pdf.version}</version>
</dependency>

The method that performs the conversion to PDF:

private byte[] getPdfWithLocalesFontSupport(StringBuilder fileText) throws IOException {
        LicenseKey.loadLicenseFile(new File("/path/key.json"));
        FontProvider fontProvider = new FontProvider(addCertificateFonts(), "");
        fontProvider.addStandardPdfFonts();

        ConverterProperties properties = new ConverterProperties().setFontProvider(fontProvider);
        properties.setBaseUri(getBaseProjectUri());
        try (ByteArrayOutputStream out = new ByteArrayOutputStream()) {
            HtmlConverter.convertToPdf(fileText.toString(), out, properties);
            return out.toByteArray();
        }
    }

What is the problem and how to fix it?

0 Answers
Related