Tengo un pequeño fragmento de código que se ejecuta en algunas transacciones para su procesamiento. Cada transacción está marcada con un número de transacción, que es generado por un programa externo y no está necesariamente secuenciado. Cuando detecto una Excepción en el código de procesamiento, la estoy lanzando a la clase principal y registrándola para su posterior revisión. Me gustaría agregar el número de transacción a esta excepción lanzada. ¿Es posible hacer esto mientras se mantiene el seguimiento de pila correcto?Agregar un mensaje personalizado a la excepción lanzada mientras se mantiene el seguimiento de la pila en Java
Por ejemplo:
public static void main(String[] args) {
try{
processMessage();
}catch(Exception E){
E.printStackTrace();
}
}
private static void processMessage() throws Exception{
String transNbr = "";
try{
transNbr = "2345";
throw new Exception();
}catch(Exception E){
if(!transNbr.equals("")){
//stack trace originates from here, not from actual exception
throw new Exception("transction: " + transNbr);
}else{
//stack trace gets passed correctly but no custom message available
throw E;
}
}
}
eso es exactamente lo que estaba buscando. Gracias. – thedan