Salesforce: getContentAsPDF()在lightning mode下报错

近日发现某class中getContentAsPDF()方法在lightning mode中报错:internal salesforce error

但是在classic mode中则可以正常工作。

实际需求是将某一vf page变成pdf文件存储为某data中的attachment

第一种修改方案是将getContentAsPDF()改为getContent(),实测不会报错。但是生成的attachment出现异常,无法打开或下载。

第二种方案是去掉vf page中的lightningstylesheets="true"标签。去掉之后,getContentAsPDF()方法可正常工作。

但是该页面在lightning mode下也会丢失lightning样式。

所以为了满足客户需求,还需要重新创建一个vf page用于该页面在lightning mode中的显示。

另外还有一点要注意:登录页面进行getContentAsPDF()操作的user必须要有访问相关vf page的权限,否则也会报internal salesforce error

原文地址:https://www.cnblogs.com/clsriz/p/14143141.html