Objekte im debugger finden?
- From: Jan Torben Heuer <jtnews@xxxxxxxxxxxxxxxxxxxxx>
- Date: Fri, 30 Nov 2007 16:09:49 +0100
Hallo,
Ein Stacktrace gibt mir
ObjectNotStorableException: java.lang.Object@161401f
aus. Habe ich irgendeine Möglichkeit dieses Objekt zu finden, insbesondere
seine references? Ich dachte da an den Garbagecollector, der das ja wissen
müsste...
also über alle Objekte iterieren und
toString.equals("java.lang.Object@161401f"); aufrufen?
Ich nutze Eclipse, falls es damit irgendie einfacher geht?...
So, falls jemand db4o-kundig ist, mag er vielleicht weiterlesen: ;-)
Der Grund der Exception ist, dass das Speichern einer Instanz mit db4o
Fehlschlägt, der vermeintliche Übeltäter aber weder vom Typ Object ist
(naja, schon, aber doch eine konkrete Sub-Klasse), noch Fehlschlagen
dürfte, weil es einen Translator dafür gibt.
{
Db4o.configure().objectClass(XmlObject.class).translate(new
XMLBeansTranslator());
//open file...
}
public class XMLBeansTranslator implements ObjectConstructor {
public void onActivate(ObjectContainer arg0, Object arg1, Object arg2) {
}
public Object onStore(ObjectContainer arg0, Object arg1) {
XmlObject store = (XmlObject) arg1;
return store.xmlText();
}
public Class storedClass() {
return String.class;
}
public Object onInstantiate(ObjectContainer arg0, Object stored) {
String xml = (String) stored;
return XMLBeansParser.parse(xml); //removed try-catch...
}
}
}
speichern tue ich eine Klasse
DAO {
private Structure structure; //implements XmlObject
private String string;
}
...und wenn ich Structure auf transient stelle fkt. es ja auch.
Der Translator wird auch ausgeführt! Entsprechende Breakpoints zeigten
dies...
Ratlos,
Jan
.
- Prev by Date: Re: Eklige Vergleiche von Referenzen mittels ==
- Next by Date: Re: Taste(nkombination) fuer Char herausfinden
- Previous by thread: Problem mit JAXB-Anttask(XJC)
- Next by thread: Re: Objekte im debugger finden?
- Index(es):
Relevant Pages
|