8214208: Nestmate package validation logging/exception should include classloader information

Reviewed-by: hseigel, coleenp, mchung
This commit is contained in:
David Holmes 2018-11-27 21:20:16 -05:00
parent fdd11cac16
commit cb861252d7
3 changed files with 95 additions and 89 deletions

View file

@ -284,19 +284,25 @@ InstanceKlass* InstanceKlass::nest_host(Symbol* validationException, TRAPS) {
if (log_is_enabled(Trace, class, nestmates)) {
ResourceMark rm(THREAD);
log_trace(class, nestmates)("Type %s is not a nest member of resolved type %s: %s",
this->external_name(),
k->external_name(),
error);
log_trace(class, nestmates)
("Type %s (loader: %s) is not a nest member of "
"resolved type %s (loader: %s): %s",
this->external_name(),
this->class_loader_data()->loader_name_and_id(),
k->external_name(),
k->class_loader_data()->loader_name_and_id(),
error);
}
if (validationException != NULL) {
ResourceMark rm(THREAD);
Exceptions::fthrow(THREAD_AND_LOCATION,
validationException,
"Type %s is not a nest member of %s: %s",
"Type %s (loader: %s) is not a nest member of %s (loader: %s): %s",
this->external_name(),
this->class_loader_data()->loader_name_and_id(),
k->external_name(),
k->class_loader_data()->loader_name_and_id(),
error
);
}