FOP 无法从 url 加载图像

FOP fails to load image from url

我有一个网页 api,其中 returns 一张图片。我正在尝试将其集成到我的 FO 模板中。

<fo:block font-weight="normal" text-align="left">
     <fo:external-graphic src="url({$URL})">
     </fo:external-graphic>
</fo:block>

其中 $URL 是 "http://{servername}/images/{id}".

我收到以下错误:

HTTP Status 500 – Internal Server Error Type Exception Report

Message Servlet execution threw an exception

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

javax.servlet.ServletException: Servlet execution threw an exception org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) Root Cause

java.lang.NoClassDefFoundError: com/sun/media/jai/codec/FileCacheSeekableStream

我可以使用 http://{servername}/images/{id} url 直接访问图像,所以 url 是正确的。

根本原因是 FOP 无法为 PDF 文件加载 PNG 图像。它与 JPEG/BMP/GIF 一起工作得很好。

https://xmlgraphics.apache.org/fop/2.0/graphics.html