JavaFX位置未设置错误消息

我有问题,当试图关闭当前场景和打开另一个场景,当menuItem被选择。我的主要阶段编码如下:

public void start(Stage primaryStage) throws Exception {
    primaryStage.setTitle("Shop Management");
    FXMLLoader myLoader = new FXMLLoader(getClass().getResource("cartHomePage.fxml"));

    Pane myPane = (Pane) myLoader.load();

    CartHomePageUI controller = (CartHomePageUI) myLoader.getController();

    controller.setPrevStage(primaryStage);
    Scene myScene = new Scene(myPane);
    primaryStage.setScene(myScene);
    primaryStage.show();
}

当程序执行时,它将进入cartHomePage.fxml。从那里,当选择菜单项时,我可以选择去创建产品或创建类别。这里是我的动作事件:

Stage prevStage;

public void setPrevStage(Stage stage){
     this.prevStage = stage;
}

 public void gotoCreateCategory(ActionEvent event) throws IOException {
  Stage stage = new Stage();
    stage.setTitle("Shop Management");
    FXMLLoader myLoader = new FXMLLoader(getClass().getResource("createCategory.fxml"));
    Pane myPane = (Pane) myLoader.load();            
    Scene scene = new Scene(myPane);
    stage.setScene(scene);
    prevStage.close();
    setPrevStage(stage);
    stage.show();       
}

//Method to change scene when menu item create product is on click
@FXML
public void gotoCreateProduct(ActionEvent event) throws IOException {
   Stage stage = new Stage();
    stage.setTitle("Shop Management");
    FXMLLoader myLoader = new FXMLLoader(getClass().getResource("creatProduct.fxml"));
    Pane myPane = (Pane) myLoader.load();            
    Scene scene = new Scene(myPane);
    stage.setScene(scene);
    prevStage.close();
    setPrevStage(stage);
    stage.show();      
}

但是,我只能切换一次舞台。例如,我的默认页面是cartHomePage.fxml。当我运行程序,首先我去创建产品阶段。之后,我不能再去任何地方了。错误消息是:

java.lang.IllegalStateException: Location is not set.
and Null Pointer Exception

我在关闭它之后设置了舞台,并传递给它。我不知道哪个部分出了问题。

提前致谢。

我有这个问题,发现这个帖子。我的问题只是一个文件名问题。

FXMLLoader(getClass().getResource("/com/companyname/reports/" +
report.getClass().getCanonicalName().substring(18).replaceAll("Controller", "") +
".fxml"));

Parent root = (Parent) loader.load();

我有一个xml,这是所有来自,我已经确保我的类是相同的fxml文件减少字控制器。

我弄乱了子字符串,所以路径错误…确定足够的后我固定的文件名称它工作。

为了做一个长的故事短我认为问题是文件名命名不正确或路径错误。

http://stackoverflow.com/questions/17228487/javafx-location-is-not-set-error-message

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:JavaFX位置未设置错误消息