Hi I have 3 classes : Main, GuiController, AddcompetitionController
2 Views : Gui and another popupWindow : AddCompetition
I am trying to use GuiController inside AddcompetitionController. And I am having troubles. Can some1 help me please ?
AddcompetitionController - I am already trying to initialize GuiController gc and use its function (gc.refreshAll());
public class AddcompetitionController implements Initializable {
    private GuiController gc = new GuiController();           ------ initialize
    
    public void setGC(GuiController gc) {
        this.gc = gc ;
    }
    @FXML // dd/MM/yyyy
    void addCompetitionButtonAction(ActionEvent event) {
        String text = dateTF.getText();
        java.time.format.DateTimeFormatter formatter = java.time.format.DateTimeFormatter.ofPattern("dd/MM/yyyy");
        java.time.LocalDate textFieldAsDate = java.time.LocalDate.parse(text, formatter);
        java.sql.Date sqlDate = java.sql.Date.valueOf(textFieldAsDate);
        
        App.addCompetition(disciplineTF.getText(), categoryTF.getText(), sqlDate,
                cityTF.getText(), countryTF.getText());
        Stage stage = (Stage) button.getScene().getWindow();
        stage.close();
        gc.refreshAll();                                     ----- calling a method
    }
}
GuiController
public class GuiController implements Initializable {
 code ... initialize... etc
    @FXML
    void addCompetitionButtonAction(ActionEvent event) {
        Parent root;
            try {
                Stage stage = new Stage();
                root = FXMLLoader.load(getClass().getResource("/javaFX/AddCompetition.fxml"));
                Scene scene = new Scene(root);
                stage.setTitle("Add new competition");
                stage.setScene(scene);
                stage.show();                               
            } catch (IOException e) {
                e.printStackTrace();
            }   
    }
Main
package javaFX;
imports...
public class Main extends Application {
    
    public static void main(String[] args) {
        launch(args);
    }
    
    @Override
    public void start(Stage primaryStage)  {
        Parent root;
            try {
                root = FXMLLoader.load(getClass().getResource("/javaFX/Gui.fxml"));
                Scene scene = new Scene(root);
                primaryStage.setScene(scene);
                primaryStage.show();                                
            } catch (IOException e) {
                e.printStackTrace();
            }                       
    }
}
