nullpointerexception - javafx.fxml.LoadException - .fxml file not found -
first of all, i'm definetly not native speaker hope can desribe correct what's in post :d
so problem? when try construct javafx application a couple different "windows". problem when try biuld initialize() function in maincontroller class. function should load first window login , password fields.
the problem shows when put logic in initialize() method in maincontroller class, load window. me strange, because main problem according console compiler cannot found .fxml file build main window, not second (which build initialize() method.
if know seems problem?
the error is:
not found: .file:/c:/users/admin/workspace%20fx/schoollist/target/classes/fxml/appmainscreen.fxml //
that output try/catch block, .fxml file there sure. path , name correct.
javafx.fxml.loadexception: /c:/users/admin/workspace%20fx/schoollist/target/classes/fxml/appmainscreen.fxml
at javafx.fxml.fxmlloader.constructloadexception(fxmlloader.java:2601) @ javafx.fxml.fxmlloader.loadimpl(fxmlloader.java:2579) @ javafx.fxml.fxmlloader.loadimpl(fxmlloader.java:2441) @ javafx.fxml.fxmlloader.load(fxmlloader.java:2409) @ pl.mati.schoollist.app.schoollistapp.start(schoollistapp.java:28) @ com.sun.javafx.application.launcherimpl.lambda$launchapplication1$162(launcherimpl.java:863) @ com.sun.javafx.application.platformimpl.lambda$runandwait$175(platformimpl.java:326) @ com.sun.javafx.application.platformimpl.lambda$null$173(platformimpl.java:295) @ java.security.accesscontroller.doprivileged(native method) @ com.sun.javafx.application.platformimpl.lambda$runlater$174(platformimpl.java:294) @ com.sun.glass.ui.invokelaterdispatcher$future.run(invokelaterdispatcher.java:95) @ com.sun.glass.ui.win.winapplication._runloop(native method) @ com.sun.glass.ui.win.winapplication.lambda$null$148(winapplication.java:191) @ java.lang.thread.run(thread.java:745)
caused by: java.lang.nullpointerexception @ pl.mati.schoollist.controllers.maincontroller.initialize(maincontroller.java:73) @ javafx.fxml.fxmlloader.loadimpl(fxmlloader.java:2548) ... 12 more exception in application start method java.lang.reflect.invocationtargetexception @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:498) @ com.sun.javafx.application.launcherimpl.launchapplicationwithargs(launcherimpl.java:389) @ com.sun.javafx.application.launcherimpl.launchapplication(launcherimpl.java:328) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:498) @ sun.launcher.launcherhelper$fxhelper.main(launcherhelper.java:767) caused by: java.lang.runtimeexception: exception in application start method @ com.sun.javafx.application.launcherimpl.launchapplication1(launcherimpl.java:917) @ com.sun.javafx.application.launcherimpl.lambda$launchapplication$155(launcherimpl.java:182) @ java.lang.thread.run(thread.java:745)
caused by: java.lang.nullpointerexception: root cannot null @ javafx.scene.scene.(scene.java:336) @ javafx.scene.scene.(scene.java:194) @ pl.mati.schoollist.app.schoollistapp.start(schoollistapp.java:42) @ com.sun.javafx.application.launcherimpl.lambda$launchapplication1$162(launcherimpl.java:863) @ com.sun.javafx.application.platformimpl.lambda$runandwait$175(platformimpl.java:326) @ com.sun.javafx.application.platformimpl.lambda$null$173(platformimpl.java:295) @ java.security.accesscontroller.doprivileged(native method) @ com.sun.javafx.application.platformimpl.lambda$runlater$174(platformimpl.java:294) @ com.sun.glass.ui.invokelaterdispatcher$future.run(invokelaterdispatcher.java:95) @ com.sun.glass.ui.win.winapplication._runloop(native method) @ com.sun.glass.ui.win.winapplication.lambda$null$148(winapplication.java:191) ... 1 more exception running application pl.mati.schoollist.app.schoollistapp
compiler cannot load fxml file, leads nullpointerexception in places, there should stackpane injected (stackpane loaded fxml file).
this classes: main class, application launched.
schoollistapp.class
public class schoollistapp extends application{ public static void main (string[] args){ launch(args); } @override public void start(stage stage) throws exception { fxmlloader loader = new fxmlloader(); stackpane mainstackpane = null; url path = getclass().getresource("/fxml/appmainscreen.fxml"); try { loader.setlocation(path); mainstackpane = (stackpane) loader.load(); } catch (ioexception e) { system.out.println("not found: " + path); e.printstacktrace(); } catch (exception e) { // answer: e.getcause().printstacktrace(); } maincontroller controller = loader.getcontroller(); scene scene = new scene(mainstackpane); //here got caused by: java.lang.nullpointerexception: root cannot null. error// stage.setscene(scene); stage.settitle("school list manager application"); stage.show(); } }
the main controller class. if initiliazie method empty - compiler works fine , build first window. when try build windows got error.
maincontroller.class
public class maincontroller implements initializable{ @fxml private stackpane mainstackpane; @fxml public void initialize(){ fxmlloader loader = new fxmlloader(); pane pane = null; url path; path = getclass().getresource("/fxml/hellowindow.fxml"); try { loader.setlocation(path); pane = loader.load(); } catch (ioexception e) { system.out.println("not found: " + path); e.printstacktrace(); } catch (exception e) { // answer: e.getcause().printstacktrace(); } mainstackpane.getchildren().add(pane); } public maincontroller() { }
Comments
Post a Comment