Vorweg: Ja, es ist eine dumme Idee Entity Beans vom Client ansprechbar zu machen per Remote Interface. Derzeitig teste ich nur etwas aus.
Software: Eclipse, Lomboz, JBOSS, MySQL
Ich hab mir eine Entity Bean (CMP) für eine MySQL Relation geschrieben. Diese funktioniert auch wunderbar. Nur eine Frage habe ich:
Wenn ich von einem Java Client aus die Entity Bean direkt anspreche und mir eine Collection mit komplexen Typen (sagen wir mal Objekte des Typs java.lang.String) zurück geben lasse, dann kann ich diese nicht mehr verarbeiten, da die Collection, wenn sie im Client angekomme ist, auf die lokalen Objekte des Server verweißt. Soweit bin ich in meinen Erkenntnissen.
Der Fehler ist dann sowas in der Art:
java.lang.reflect.UndeclaredThrowableException
at $Proxy2.getCourses(Unknown Source)
at first.client.Test.main(Test.java:75)
Caused by: java.io.NotSerializableException: org.jboss.ejb.plugins.cmp.jdbc.bridge.RelationSet
...
(achtung: ist nicht der wirkliche fehler.. aber sowas in der art kommt da)
Jetzt ist die Frage: wie kann ich eine Collection direkt an den Client senden, so dass die Objekte in der Collection auch vom Client noch ansprechbar sind?
Software: Eclipse, Lomboz, JBOSS, MySQL
Ich hab mir eine Entity Bean (CMP) für eine MySQL Relation geschrieben. Diese funktioniert auch wunderbar. Nur eine Frage habe ich:
Wenn ich von einem Java Client aus die Entity Bean direkt anspreche und mir eine Collection mit komplexen Typen (sagen wir mal Objekte des Typs java.lang.String) zurück geben lasse, dann kann ich diese nicht mehr verarbeiten, da die Collection, wenn sie im Client angekomme ist, auf die lokalen Objekte des Server verweißt. Soweit bin ich in meinen Erkenntnissen.
Der Fehler ist dann sowas in der Art:
java.lang.reflect.UndeclaredThrowableException
at $Proxy2.getCourses(Unknown Source)
at first.client.Test.main(Test.java:75)
Caused by: java.io.NotSerializableException: org.jboss.ejb.plugins.cmp.jdbc.bridge.RelationSet
...
(achtung: ist nicht der wirkliche fehler.. aber sowas in der art kommt da)
Jetzt ist die Frage: wie kann ich eine Collection direkt an den Client senden, so dass die Objekte in der Collection auch vom Client noch ansprechbar sind?