我在尝试从不同的包中访问.fxml时遇到问题。让我说我的login.fxml在客户包中。成功登录后,将转到主页。在主页中,我获得了一个指向myShoppingCart.fxml的按钮链接,该链接位于购物车包中。但是,当我这样做时,我得到了空指针异常错误:
public void goToCart(ActionEvent event) {
String userName = CustomerLoginController.userLoggedIn.getName();
try {
FXMLLoader fxmlLoader = new FXMLLoader();
Pane p = (Pane) fxmlLoader.load(getClass().getResource("cartCustHome.fxml").openStream());
CartCustHomeUI fooController = (CartCustHomeUI) fxmlLoader.getController();
fooController.retrieveUserName(userName);
Stage stage = new Stage();
Scene scene = new Scene(p);
scene.getStylesheets().add(MainFrame.class.getResource("cart.css").toExternalForm());
stage.setScene(scene);
stage.show();
((Node) (event.getSource())).getScene().getWindow().hide();
} catch (IOException e) {
e.printStackTrace();
}
}
虽然我已经导入了我的购物车套餐,但我的购物车没有得到购买。我想知道为什么会这样。提前谢谢。
答案 0 :(得分:0)
尝试
getClass().getResource("../customer/cartCustHome.fxml").openStream()
有关详细信息,请在网站上搜索“java getresource returns null”。关于这个主题有很多讨论,它们提供了全面的解释。