Обработка исключений с помощью Apex (force.com) - PullRequest
0 голосов
/ 02 января 2012

Можно ли сгенерировать стандартное или пользовательское исключение методом Apex как,

 private void createNewJob() throws RecordNotFoundException { 

  try {         
         // Some DML operation                
      } catch (Exception e) {  
         System.Debug('Error: Object not found');
         throw new RecordNotFoundException('Object not found');
      }
  }

Ответы [ 3 ]

1 голос
/ 29 мая 2013

Я думаю, что следующее может помочь вам. Это полный пример стандарта SFDC APEX и пользовательских исключений

http://share -salesforce.blogspot.in / 2013/05 / Salesforce-апекс-обработки исключений-and_29.html

1 голос
/ 02 января 2012

Да.

Определить класс исключения.Минимально:

public class RecordNotFoundException extends Exception { }

Ваш оператор throw выглядит хорошо.

Также нет необходимости объявлять, что метод генерирует тип исключения.

0 голосов
/ 05 января 2012

Мы не должны явно выбрасывать эти стандартные или пользовательские исключения с помощью Apex, закодируйте это самостоятельно.

@ Метод, который выдает какое-то пользовательское исключение (RecordNotFoundException)

private void createNewJob(){ 

  try {         
         // Some DML operation                
      } catch (Exception e) {  
         System.Debug('Error: Object not found');
         throw new RecordNotFoundException('Object not found');
      }
 }

@ Может обрабатыватьэто исключение, как следует,

private void callingMethod() { 

  try {         
         createNewJob(); // Call above method                 
      } catch (RecordNotFoundException e) {  
         System.Debug('Error:Record not found exception ['+ e.getMessage()+']');       
      }
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...