웹 서비스 호출을 연속적으로 실행 한 후 JavaFX 응용 프로그램의 UI가 멈 춥니 다. 이러한 프로세스 호출은 비동기입니다.JavaFX UI 고정 중단
이 문제를 어떻게 해결합니까? UI를 "고정 해제"할 수있는 방법이 있습니까?
초보자를위한 질문입니다. 하지만 나에게 누군가의 도움이 절실히 필요합니다.
웹 서비스 호출을 연속적으로 실행 한 후 JavaFX 응용 프로그램의 UI가 멈 춥니 다. 이러한 프로세스 호출은 비동기입니다.JavaFX UI 고정 중단
이 문제를 어떻게 해결합니까? UI를 "고정 해제"할 수있는 방법이 있습니까?
초보자를위한 질문입니다. 하지만 나에게 누군가의 도움이 절실히 필요합니다.
실행을위한 스레드를 만들었습니까? JavaFX는 EDT (이벤트 발송 스레드)에서 실행됩니다. 그래서 GUI 고정이 발생합니다. 여기에 무엇을합니까
import javafx.async.*
public class MyWebService extends RunnableFuture {
public var webserviceURL:String;
override run(): Void {
// your web service
}
}
public class MyWebServiceTask extends JavaTaskBase {
override create(): RunnableFuture {
return MyWebService {
webserviceURL: "http://...."
};
}
}
def webserviceTask: MyWebServiceTask = MyWebServiceTask { }
webserviceTask.start();
웹 서비스 클라이언트 및 다른 클래스가 JavaME에있는 동안 내 UI는 JavaFX입니다. 귀하의 질문에 대답하기 위해 스레드를 실행하여 Java로 실행합니다. 위에 게시 한 코드를 사용해야합니까? – cancelledout
스레드는 Java에서 RunnableFuture를 구현해야합니다. FX에서 MyWebServiceTask로 시작하십시오. –
이것은 오래된 것 같습니다, 비동기 패키지는 javafx2에서 제거 된 것 같습니다. –
정말 비동기입니까? 서비스를 호출하는 코드의 관련 부분을 삽입하십시오. NetBeans JavaFX Composer 데이터 소스를 사용하여 서비스를 가져올 수 있습니까? 그렇다면 너무 동결됩니까? 더 많은 정보가 도움이 될 것입니다. –
웹 서비스가 SOAP이기 때문에 JavaME의 웹 서비스 클라이언트를 사용하고 있습니다. JavaFX의 웹 서비스 기능은 SOAP 기반 웹 서비스를 허용하지 않습니다. – cancelledout