Então Anderson, eu não sei se é a forma correta de aplicar, até porque também estou aprendendo, mais o que eu faço é remover a tag fx:controller do .fxml, instanciar a classe controller desse .fxml sem controller e na hora de instanciar esse controller eu instancio ele com o construtor que tem o código que chama o .fxml e que passo os parâmetros que desejo alterar. Algo mais ou menos assim:
public class MailOkController extends AnchorPane{
@FXML // fx:id="bt_ok"
private Button bt_ok; // Value injected by FXMLLoader
Stage stageOk;
public MailOkController(Stage x, Parametro 1, Parametro 2, etc){
stageOk = x;
FXMLLoader fxmlLoader = new FXMLLoader(appotica_v2.AppOtica_v2.class.getResource("/view/mailOk.fxml"));
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
try{
fxmlLoader.load();
}catch(IOException exception){
throw new RuntimeException(exception);
}
}
.......
Agora fiquei curioso com o seu código.. pq vc está utilizando um .fxml para cada tab? É um sistema web ou desktop? Pq não cria num mesmo .fxml todas as tab's?