私は Java Spring Rest クライアント アプリケーションを実装しました。各残りは入力 xml ファイルを取得し、ファイルの値に応じてそのファイルに課税し、Javafx Webview に表示される jsp ファイルを選択します。トランザクションが完了したら、その webview ウィンドウを閉じる必要があります。結果を残りのクリネ応答として送り返します。リクエストごとに、javafx webview ウィンドウを開いて処理する必要があります。
しかし、ここでonecの問題に直面しています。
レストクレインコール
static String url ="http://localhost:8080/login.jsp?value=47&key=645";
javafx.application.Application.launch(Webview.class);
Webview クラス
public class Webview extends Application {
public static Stage stage;
public static WebView view;
@Override
public void start(Stage _stage) throws Exception {
System.out.println("Start");
stage = _stage;
Platform.setImplicitExit(true);
StackPane root = new StackPane();
view = new WebView();
WebEngine engine = view.getEngine();
engine.load(PaymentServerRestAPI.BROWSER_URL);
root.getChildren().add(view);
engine.setJavaScriptEnabled(true);
Scene scene = new Scene(root, 800, 600);
stage.setScene(scene);
stage.setOnCloseRequest(new EventHandler<WindowEvent>() {
@Override
public void handle(WindowEvent arg0) {
Platform.exit();
}
});
JSObject window = (JSObject) engine.executeScript("window");
window.setMember("app", new BrowserApp());
stage.show();
}
}
//JavaScript インターフェイス オブジェクト
public class BrowserApp {
public void exit() {
System.out.println("exist calling button");
Browser.frame.setVisible(false);
}
}
問題は、1 つの要求が正常に完了し、次の要求が「メインのエラー:java.lang.IllegalStateException: アプリケーションの起動を複数回呼び出す必要はありません」というメッセージが表示されることです。これを処理する方法。この問題を処理する他の方法、ありがとう