in sdk/enclave/src/main/java/org/apache/teaclave/javasdk/enclave/EnclaveEntry.java [122:138]
private static int handleFrameworkException(Throwable t) {
if (callBackMethods.isNonNull() && callBackMethods.getExceptionHandler().isNonNull()) {
StringBuilder stacktraceSB = new StringBuilder();
for (StackTraceElement se : t.getStackTrace()) {
stacktraceSB.append(se.toString()).append("\n");
}
try (
CTypeConversion.CCharPointerHolder stacktrace = CTypeConversion.toCString(stacktraceSB.toString());
CTypeConversion.CCharPointerHolder errMsg = CTypeConversion.toCString(t.getMessage());
CTypeConversion.CCharPointerHolder exception = CTypeConversion.toCString(t.getClass().toString())) {
callBackMethods.getExceptionHandler().invoke(errMsg.get(), stacktrace.get(), exception.get());
}
} else {
t.printStackTrace();
}
return 1;
}