Ok so I know you want a gui, but heres some code that might set you in the right direction of how this might be implemented.
First deserialization:
File file = new File(filename);
ObjectInputStream in = new ObjectInputStream(new FileInputStream(file));
Object obj = in.readObject();
in.close();
return obj;
Once you have the object deserialized, you can use reflection to get the internals (notice how you have to check if it is accessible and if not make it accessible so you can get the actual value:
Class clazz = obj.getClass();
Field[] fs = clazz.getDeclaredFields();
for (Field f : fs)
{
boolean acc = f.isAccessible();
if(!acc)
{
f.setAccessible(true);
}
Object fieldObj = f.get(obj);
String fieldName = f.getName();
f.setAccessible(acc);
}
With that as a basis, you could probably build a tree of the internals of the object and display it to gui similar to what shows up in the eclipse debugger.
I know this isn't what you've asked for, but it might point you in the right direction to an implementation that will handle most of what you want and need.