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
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
j'ai testé ce code qui n'affiche rien
j'ai remarque encore 2 vers lesquellespointe le stacktrace:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 }
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
pourriez vous m'expliquer cette exception ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 private SystemeController sysObj = new SystemeController(); //instancier controleur systeme dan composant private ComposantController compObj = new ComposantController(); //instancier controleur composant dans systeme
merci
Partager