Fwd: How to use fop with Java 21

Rolf Schumacher <[email protected]> Tue, 3 Sep 2024 18:38:38 +0200
Newsgroups gmane.text.xml.fop.user
Message-ID <[email protected]>
--------------HY6PmLTKETF30B9NTUKW82WD
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Dear fop specialists,

some time ago I used to use fop something like shown below (I hope the 
formatting stays constant).

Now I was trying to do so with maven, Java-21 and fop 2.9 and failed.

Is there an example program, e.g. on github, how to use fop 2.9, 
including the pom.xml and the module-info.java?

=====

FopFactoryBuilderbuilder=newFopFactoryBuilder(basePath.toUri())

.setPageHeight("297mm")

.setPageWidth("210mm");

FopFactoryfopFactory=builder.build();

out=newBufferedOutputStream(Files.newOutputStream(r));

Fopfop=fopFactory.newFop(MimeConstants.MIME_PDF,out);

Transformertransformer=TransformerFactory.newInstance().newTransformer();

Sourcesrc=newStreamSource(fo.toFile());

Resultres=newSAXResult(fop.getDefaultHandler());

transformer.transform(src,res);

out.close();

=====

mit freundlichen Grüße, Best Regards

Rolf

--------------HY6PmLTKETF30B9NTUKW82WD
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Dear fop specialists,
    <div class="moz-forward-container">
      <p>some time ago I used to use fop something like shown below (I
        hope the formatting stays constant).<br>
      </p>
      <p>Now I was trying to do so with maven, Java-21 and fop 2.9 and
        failed.</p>
      <p>Is there an example program, e.g. on github, how to use fop
        2.9, including the pom.xml and the module-info.java?<br>
      </p>
      <p>=====<br>
      </p>
      <div style="background-color:#2f2f2f;padding:0px 0px 0px 2px;">
        <div
style="color:#cccccc;background-color:#2f2f2f;font-family:&quot;Monospace&quot;;font-size:10pt;white-space:pre;"><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#1290c3;">FopFactoryBuilder</span><span
        style="color:#d9e8f7;"> </span><span style="color:#f2f200;">builder</span><span
        style="color:#d9e8f7;"> </span><span style="color:#e6e6fa;">=</span><span
        style="color:#d9e8f7;"> </span><span style="color:#cc6c1d;">new</span><span
        style="color:#d9e8f7;"> </span><span style="color:#a7ec21;">FopFactoryBuilder</span><span
        style="color:#f9faf4;">(</span><span style="color:#79abff;">basePath</span><span
        style="color:#e6e6fa;">.</span><span style="color:#80f6a7;">toUri</span><span
        style="color:#f9faf4;">())</span></p><p style="margin:0;"><span
        style="color:#d9e8f7;">			</span><span style="color:#e6e6fa;">.</span><span
        style="color:#a7ec21;">setPageHeight</span><span
        style="color:#f9faf4;">(</span><span style="color:#17c6a3;">"297mm"</span><span
        style="color:#f9faf4;">)</span></p><p style="margin:0;"><span
        style="color:#d9e8f7;">			</span><span style="color:#e6e6fa;">.</span><span
        style="color:#a7ec21;">setPageWidth</span><span
        style="color:#f9faf4;">(</span><span style="color:#17c6a3;">"210mm"</span><span
        style="color:#f9faf4;">)</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#1290c3;">FopFactory</span><span
        style="color:#d9e8f7;"> </span><span style="color:#f2f200;">fopFactory</span><span
        style="color:#d9e8f7;"> </span><span style="color:#e6e6fa;">=</span><span
        style="color:#d9e8f7;"> </span><span style="color:#f3ec79;">builder</span><span
        style="color:#e6e6fa;">.</span><span style="color:#a7ec21;">build</span><span
        style="color:#f9faf4;">()</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#f3ec79;">out</span><span style="color:#d9e8f7;"> </span><span
        style="color:#e6e6fa;">=</span><span style="color:#d9e8f7;"> </span><span
        style="color:#cc6c1d;">new</span><span style="color:#d9e8f7;"> </span><span
        style="color:#a7ec21;">BufferedOutputStream</span><span
        style="color:#f9faf4;">(</span><span style="color:#1290c3;">Files</span><span
        style="color:#e6e6fa;">.</span><span
        style="color:#96ec3f;font-style:italic;">newOutputStream</span><span
        style="color:#f9faf4;">(</span><span style="color:#f3ec79;">r</span><span
        style="color:#f9faf4;">))</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#1290c3;">Fop</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f2f200;">fop</span><span style="color:#d9e8f7;"> </span><span
        style="color:#e6e6fa;">=</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f3ec79;">fopFactory</span><span
        style="color:#e6e6fa;">.</span><span style="color:#a7ec21;">newFop</span><span
        style="color:#f9faf4;">(</span><span style="color:#80f2f6;">MimeConstants</span><span
        style="color:#e6e6fa;">.</span><span
        style="color:#8ddaf8;font-style:italic;font-weight:bold;">MIME_PDF</span><span
        style="color:#e6e6fa;">,</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f3ec79;">out</span><span style="color:#f9faf4;">)</span><span
        style="color:#e6e6fa;">;</span></p><p style="margin:0;"><span
        style="color:#d9e8f7;">	</span><span style="color:#3eabe6;">Transformer</span><span
        style="color:#d9e8f7;"> </span><span style="color:#f2f200;">transformer</span><span
        style="color:#d9e8f7;"> </span><span style="color:#e6e6fa;">=</span><span
        style="color:#d9e8f7;"> </span><span style="color:#3eabe6;">TransformerFactory</span><span
        style="color:#e6e6fa;">.</span><span
        style="color:#96ec3f;font-style:italic;">newInstance</span><span
        style="color:#f9faf4;">()</span><span style="color:#e6e6fa;">.</span><span
        style="color:#80f6a7;">newTransformer</span><span
        style="color:#f9faf4;">()</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#80f2f6;">Source</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f2f200;">src</span><span style="color:#d9e8f7;"> </span><span
        style="color:#e6e6fa;">=</span><span style="color:#d9e8f7;"> </span><span
        style="color:#cc6c1d;">new</span><span style="color:#d9e8f7;"> </span><span
        style="color:#a7ec21;">StreamSource</span><span
        style="color:#f9faf4;">(</span><span style="color:#79abff;">fo</span><span
        style="color:#e6e6fa;">.</span><span style="color:#a7ec21;">toFile</span><span
        style="color:#f9faf4;">())</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#80f2f6;">Result</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f2f200;">res</span><span style="color:#d9e8f7;"> </span><span
        style="color:#e6e6fa;">=</span><span style="color:#d9e8f7;"> </span><span
        style="color:#cc6c1d;">new</span><span style="color:#d9e8f7;"> </span><span
        style="color:#a7ec21;">SAXResult</span><span
        style="color:#f9faf4;">(</span><span style="color:#f3ec79;">fop</span><span
        style="color:#e6e6fa;">.</span><span style="color:#a7ec21;">getDefaultHandler</span><span
        style="color:#f9faf4;">())</span><span style="color:#e6e6fa;">;</span></p><p
        style="margin:0;"><span style="color:#d9e8f7;">	</span><span
        style="color:#f3ec79;">transformer</span><span
        style="color:#e6e6fa;">.</span><span style="color:#80f6a7;">transform</span><span
        style="color:#f9faf4;">(</span><span style="color:#f3ec79;">src</span><span
        style="color:#e6e6fa;">,</span><span style="color:#d9e8f7;"> </span><span
        style="color:#f3ec79;">res</span><span style="color:#f9faf4;">)</span><span
        style="color:#e6e6fa;">;</span></p><p style="margin:0;"><span
        style="color:#d9e8f7;">	</span><span style="color:#f3ec79;">out</span><span
        style="color:#e6e6fa;">.</span><span style="color:#a7ec21;">close</span><span
        style="color:#f9faf4;">()</span><span style="color:#e6e6fa;">;</span></p></div>
      </div>
      <p>=====</p>
      <pre class="moz-signature" cols="72">mit freundlichen Grüße, Best Regards

Rolf</pre>
    </div>
  </body>
</html>

--------------HY6PmLTKETF30B9NTUKW82WD--