gpt4 book ai didi

jasper-reports - 生成受密码保护的 pdf。如何为每个用户获取唯一密码?

转载 作者:行者123 更新时间:2023-12-05 06:41:18 24 4
gpt4 key购买 nike

我已经在 J​​asperServer 上上传了我的报告,我在 JasperServer 上安排了报告,并使用 jobs rest api 将 pdf 作为电子邮件附件发送给用户。一切正常,但我们还需要对 pdf 进行加密。我已阅读 wiki topic 并能够加密 pdf。

但我们希望密码是动态的并且每个用户都不同(例如他们的电话号码和出生日期的某种组合)。链接中描述的示例将密码指定为 jrxml 中的报告属性。

<property name="net.sf.jasperreports.export.pdf.user.password" value="123456"/>
<property name="net.sf.jasperreports.export.pdf.owner.password" value="123456"/>

密码被指定为一个字符串,并且对于从这个 jrxml 生成的每个 pdf 都是相似的。

我试过这样的东西

<property name="net.sf.jasperreports.export.pdf.user.password" value="{$F{dateOfBirth}}"/>

其中 $F{dateOfBirth} 是为其运行查询的用户的出生日期。但是它没有输入字段值,只是将其视为一个字符串并将密码设置为 ="{$F{dateOfBirth}}"

我该如何处理?我可以为每个用户设置不同的密码吗?

注意:数据源是为 jasperserver 上的报告配置的。在作业执行 api 调用中,Jasperserver 执行查询、填写报告、导出为 pdf 并将其作为电子邮件发送给用户。

最佳答案

在您的 Java 代码中添加以下代码。

JasperPrint print = JasperFillManager.fillReport(jasper, parameters, beanColDataSource2); print.setProperty("net.sf.jasperreports.export.pdf.user.password", "jasper123");

加入JRXML。

 property name="net.sf.jasperreports.export.pdf.encrypted" value="True"  property name="net.sf.jasperreports.export.pdf.128.bit.key" value="True" property name="net.sf.jasperreports.export.pdf.permissions.allowed" value="PRINTING"

关于jasper-reports - 生成受密码保护的 pdf。如何为每个用户获取唯一密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40810417/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com