Loading

NullPointerException de-reference a null object in Apex code trigger

Дата публикации: Oct 13, 2022
Описание

The execution of a trigger will sometimes generate an error message, "execution of [EventName] caused by: System.NullPointerException: Attempt to de-reference a null object: Trigger.[TriggerName]: line [XX], column [XX]"

This error is caused by a line of code that is trying to use an object that has not been instantiated, or an object's attribute that has not been initialized.

NOTE: If the field Site was left empty, it will generate the error message as well.

 

Решение

Resolve NullPointerException

The solution is to make sure the Object and/or the Attribute to be used is not null. In this example, the code needs to be modified as follows:

Account newAccount = accountMap.get(oldAccount.Name);

        if (newAccount != null) 

          if (newAccount.Site != null) 

            i = newAccount.Site.length();
 

Exception handling routine

Account newAccount = accountMap.get(oldAccount.Name);

        try {

             i = newAccount.Site.length();

            }
            catch (System.NullPointerException e) {

            e1 = e; // can be assigned to a variable to display a user-friendly error message

        }

For more information on handling exceptions, check the Apex Language Reference, under "Using Exception Methods," or "Using Exception Variables."

For more information on initializing variables, look under Chapter 2, "Language Constructs", in the topics "Variables", and "Case Sensitivity".

Номер статьи базы знаний

000385601

 
Загрузка
Salesforce Help | Article