问题描述
所以我有一个触发器(在插入之前,在ContentDocumentLink上),它是托管包的一部分,并且不会引发Null Pointer Exception。 经过检查,我发现此行是发生空指针异常的地方。
for (ContentDocumentLink contentdoclinkItr : Trigger.new) {
String sObjectName = contentdoclinkItr.LinkedEntityId.getSObjectType().getDescribe().getName();
}
我的推论是未填充 LinkedEntityId ,因为在日志中看不到该字段。
VARIABLE_ScopE_BEGIN|[2]|cdl|ContentDocumentLink|true|false
VARIABLE_ASSIGNMENT|[2]|cdl|{"IsDeleted":false,"Visibility":"AllUsers","ContentDocumentId":"0694g000000aE6gAAE"}
我们可以看到IsDelete,Visibility,ContentDocumentId等字段,但没有LinkedEntityId的字段条目。
由于这是Managed软件包的一部分,因此我无法对其进行更改,因此我将该触发器的代码复制到了一个新的Trigger中,以便可以在Log中看到LinkedEntityId字段。
VARIABLE_ScopE_BEGIN|[3]|cdl|ContentDocumentLink|true|false
VARIABLE_ASSIGNMENT|[3]|cdl|{"IsDeleted":false,"LinkedEntityId":"0054g000000XvyEAAS","ContentDocumentId":"0694g000000aE6gAAE","ShareType":"I"}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)