2012-12-22 3 views
0

이유는 모르겠지만 JavaFX 응용 프로그램에서 예외가 발생합니다.JavaFX 작업, 서비스 - 예외

FX 애플리케이션 스레드에 없습니다. currentThread = Thread-5

서비스중인 다른 작업에서 파일을로드하거나 데이터베이스에 연결하려고합니다. 이들은 시간이 많이 걸리는 작업이므로 백그라운드에서 수행하고 싶지만 아무 것도 할 수 없습니다. ... 버튼을 누른 후에 해당 작업이 시작됩니다.

다른 thead 작업에서 gui를 업데이트하려고 할 때 읽는다고 읽었지만 여기서는이 작업을 수행하지 않습니다.

try{ 
      webEngine.load("http://www.analiza.host-ed.me/wynik.html"); 
        }catch(Exception e){ 
       System.out.println("Blad: "+e); //I get the exception from there 
      } 

는 또한 시도 : webEngine.load (getClass()의 getResource ("wynik.html") toExternalForm()..); 및 동일 함

답변 해 주셔서 감사합니다.

+0

"그와 같은 예외"? * what * 같은 예외? 당신은 어떤 예외가 있는지 우리에게 말하지 않았습니다. http://tinyurl.com/so-list를 읽으십시오 (.NET과 TPL은 어떤 관련이 있습니까?) –

+0

FX 응용 프로그램 스레드가 아닙니다. currentThread = Thread-5 – damian

+0

예외 유형이 무엇인지 알려주지는 않지만 전체 스택 추적은 말할 것도 없습니다. –

답변

2

webEngine.load 전화는 Platform.runLater입니다.

자세한 방법과 필요한 이유를 이해하려면 Concurrency in JavaFX을 참조하십시오.

+0

이제는 작동하지만 runLater를 progressBar와 바인딩 할 수 있습니까? – damian