Kamikatze
Captain
- Registriert
- Okt. 2004
- Beiträge
- 3.708
Hey ihr. Echte Spezialisten sind gefragt! 
Großes, vllt. auch nur kleines Problem:
Ich programmiere derzeit ja ein zur Laufzeit erweiterbares Web-Projekt.
Wenn ich ein neues Modul hochlade, das ich installieren will, überprüfe ich auch, ob eine bestimmte Klasse in diesem Modul ein bestimmtes Interface implementiert.
m ist das gerade zuvor hochgeladene Modul.
Die ganze Klasse lautet dann z.B. "aecp.Testmodul.InitModule".
Das Problem:
Ich hab mir 2 identische Module gebastelt (sprich auch Name und somit Package), nur mit dem Unterschied, dass eine dieses Interface implementiert und die andere nicht.
Die erste Überprüfung funktioniert, will ich dann aber auch die 2. Datei hochladen, bekomm ich das gleiche Ergebnis wie zuvor, obwohl die "InitModule.class" inzwischen ersetzt wurde - also die nicht korrekte Datei wird als korrekt angezeigt und umgekehrt.
Was kann ich dagegen tun?
Danke.
Großes, vllt. auch nur kleines Problem:
Ich programmiere derzeit ja ein zur Laufzeit erweiterbares Web-Projekt.
Wenn ich ein neues Modul hochlade, das ich installieren will, überprüfe ich auch, ob eine bestimmte Klasse in diesem Modul ein bestimmtes Interface implementiert.
Code:
Class initclass = Class.forName("aecp." + m.getName() + ".InitModule");
if (initclass.getInterfaces().length > 0 && initclass.getInterfaces()[0].getName().compareTo("aecp.backbone.module.iModule") == 0)
m ist das gerade zuvor hochgeladene Modul.
Die ganze Klasse lautet dann z.B. "aecp.Testmodul.InitModule".
Das Problem:
Ich hab mir 2 identische Module gebastelt (sprich auch Name und somit Package), nur mit dem Unterschied, dass eine dieses Interface implementiert und die andere nicht.
Die erste Überprüfung funktioniert, will ich dann aber auch die 2. Datei hochladen, bekomm ich das gleiche Ergebnis wie zuvor, obwohl die "InitModule.class" inzwischen ersetzt wurde - also die nicht korrekte Datei wird als korrekt angezeigt und umgekehrt.
Was kann ich dagegen tun?
Danke.