Я согласен с комментарием @Sedrick, вы должны обновить свой пост, как он предлагает и как написано в руководстве.
Тем не менее, я укажу одну вещь, я думаю, может быть причиной этого, и любой может стесняться исправлять меня, если я ошибаюсь.
Вы, похоже, из контроллера А, подключенного к вашему FXML A, пытаетесь получить доступ к текстовой переменной из FXML B (ResultView).
main.setSceneResult();
System.out.println("resultText " +resultText );
resultText.setText("hello");
Как вы показали в кодевыше, вы добавляете корень в сцену (main.setSceneResult), хотя текущий контроллер (в котором, я предполагаю, вы находитесь) не знает о новом родителе и его членах.Что вы могли бы сделать, это создать новый контроллер для ResultView, я бы предложил, например, так:
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource(resultView.fxml));
ResultViewController resultViewController = new ResultViewController();
loader.setController(resultViewController);
Parent root = loader.load();
Затем вы можете, из controllerA, вызвать метод controllerB для обновления текстовой переменной.
Вы можете попробовать что-то вроде приведенного ниже кода, просто чтобы убедиться, что он работает.
ResultViewController resultViewController = main.setSceneResult(); /*This method returns the controller which has access to the ResultText variable (if correctly setup which it looked like you had done)*/
resultViewController.setResultText("hello");
Я надеюсь, что это может помочь вам, если нет, то я предлагаю обновить ваш пост с помощью работоспособного примера :)
Редактировать: я просмотрел код еще немного, так как я не сделалне так много времени раньше, когда я написал свой ответ.Трудно понять, что происходит, если у вас есть несколько контроллеров или если у вас есть только один контроллер (MainWindowController).Мой пример выше может помочь, поэтому, пожалуйста, попробуйте, но на самом деле я не уверен после повторного просмотра кода.Кроме того, я не уверен, есть ли причина, по которой вы указали контроллер в fxml вместо того, чтобы создавать его и устанавливать его в загрузчик, как я сделал в своем предложении.Я также не уверен, используете ли вы «MainWindowController» в качестве контроллера для ResultView и текущего View.Если это так, то я бы действительно предложил вам создать один контроллер, который обрабатывает ResultView, а затем главный контроллер обрабатывает все остальное.