我想用外部资源(jpg,css)从html创建pdf。
以下是用于生成pdf文件对象的代码,包括飞碟和itext:
ITextRenderer iTextRenderer = new ITextRenderer();
iTextRenderer.setDocumentFromString(xhtmlString);
iTextRenderer.layout();
File file = new File("test.pdf");
FileOutputStream os = new FileOutputStream(file);
iTextRenderer.createPDF(os);
os.close();
不幸的是,所有与https链接的资源都被忽略了,而http资源工作得很好。
编辑:
我扩展了iTextureAgent以拦截https调用资源,出现以下错误:
sun.security.provider.certpath.suncertpathbuilderexception:找不到请求目标的有效证书路径
所以我需要一个证书来获取这些https资源。
这里的问题和我完全一样。
1条答案
按热度按时间w51jfk4q1#
这里是一个链接,指向从https服务器加载数据的java本机方式。
现在,您使用的是flying-discer的xml解析实现,它的文档中似乎没有太多的https支持。我将使用上述解决方法,然后将dom直接传递给渲染器。