Exception java lang reflect Invocation Target
j'essai d'afficher un fxml dans un anchorpane d'un autre fxml, j'ai choisi d'appeler le controleur via le code java et non pas en fxml car il se peux que j'airai besoin de passer des paramètres, mais je reçois cette exception
Code:
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
j'appelle depuis un controleur de la vue qui contient le anchorpane 'Panneau' car elle contient les boutons comme un menu pour afficher dans le anchorpane le fxml correspondant.
j'ai testé ce code qui n'affiche rien
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
@FXML
public void loadSysteme(ActionEvent event) throws IOException {
VBox box;
if (event.getTarget() == btnSys) {
Panneau.getChildren().clear();
FXMLLoader loader = new FXMLLoader();
box = loader.load(getClass().getResource("system/systeme.fxml").openStream());
SystemeController control = new SystemeController();//appel controleur
loader.setController(control);
Panneau.getChildren().add(box); //ajouter le vbox au anchorpane
}
if (event.getTarget() == btnComp) {
//... même code pour chaque bouton sauf appel controleur et fxml qui change
} |
j'ai remarque encore 2 vers lesquellespointe le stacktrace:
parmis les controleurs que j'appelle y'en a : systemeController et composantController, dans chacun d'eux j'ai un objet de l'autre cr j'appelle une méthode (pour des renvois sql) alors il pointe vers le code d'instanciation des 2 objets
Code:
1 2 3
|
private SystemeController sysObj = new SystemeController(); //instancier controleur systeme dan composant
private ComposantController compObj = new ComposantController(); //instancier controleur composant dans systeme |
pourriez vous m'expliquer cette exception ?
merci