Bug 84492 - ClassNotLoadedException in Variables view detail
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/DebugUIMessages.properties b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/DebugUIMessages.properties
index 296041d..3aa8a56 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/DebugUIMessages.properties
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/DebugUIMessages.properties
@@ -33,6 +33,7 @@
JavaDebugPreferencePage.&Launch_timeout_(ms)__1=&Launch timeout (ms):
JavaDebugPreferencePage.14=Suspend for &breakpoints during evaluations
JavaDetailFormattersManager.9=Cannot perform nested evaluations.
+JavaDetailFormattersManager.0=<toString() unavailable. Component type not loaded>
JavaStepFilterPreferencePage.Filter_co&nstructors_19=Filter co&nstructors
JavaStepFilterPreferencePage.Filter_s&ynthetic_methods_(requires_VM_support)_17=Filter s&ynthetic methods (requires VM support)
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JavaDetailFormattersManager.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JavaDetailFormattersManager.java
index 29b2fd2..f487102 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JavaDetailFormattersManager.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JavaDetailFormattersManager.java
@@ -498,15 +498,17 @@
IJavaArrayType javaArrayType = (IJavaArrayType) arrayValue.getJavaType();
componentType = javaArrayType.getComponentType();
} catch (DebugException de) {
- if (!(de.getStatus().getException() instanceof ClassNotLoadedException)) {
+ if (de.getStatus().getException() instanceof ClassNotLoadedException) {
+ result.append(DebugUIMessages.getString("JavaDetailFormattersManager.0")); //$NON-NLS-1$
+ } else {
JDIDebugUIPlugin.log(de);
+ result.append(de.getStatus().getMessage());
}
- result.append(de.getStatus().getMessage());
return;
}
if (!(componentType instanceof IJavaReferenceType)) {
- //if it is an array of primatives, cannot use Arrays.asList()
+ //if it is an array of primitives, cannot use Arrays.asList()
appendArrayDetailIndividually(result, arrayValue);
return;
}