Я пытаюсь получить точную строку, где исключение произошло с использованием Spring AOP.
Код в AspectLogger.java:Что касается журнала регистрации событий AOP Spring
@AfterThrowing(pointcut = "execution(* com.ing.trialbal.*.*.*(..))", throwing = "ex")
public void afterThrowingAdvice(JoinPoint jp, TrialBalException ex) {
logger.info("Exception : After throwing " + jp.getSignature().getName()
+ "()");
logger.info("********* " + ex.getMessage()
+ " Exception occured during " + jp.toShortString());
System.out.println("********* " + ex.getMessage()
+ " Exception occured during " + jp.toShortString());
}
код в DAO класса, откуда я бросаю исключение службы:
try {
...
} catch (Exception e) {
System.out.println("(((((((((((((" + e.getStackTrace().toString());
throw new TrialBalException("Error.TrialBalance.Exception : " + e);
} finally {
try {
pStmt.close();
} catch (Exception e) {
e.printStackTrace();
}
}
в журнале я получаю:
Исключение: после броска getLongTBDetail()
Error.TrialBalance.Exception: java.lang.NullPointerException Возникло исключение во время выполнения (LongTBDaoImpl.getLongTBDetail (..))
Я не знаю, как получить точный номер строки, где случилась ошибка. Пожалуйста помоги.
Не могли бы вы быть немного более сложными? –
См. Отредактированный ответ – Jukka