Как вызывать launch () более одного раза в Java
Как вызывать launch () более одного раза в Java, я получил исключение как «ОШИБКА В ГЛАВНОЙ: java.lang.IllegalStateException: запуск приложения не должен вызываться более одного раза»
Я создаю rest cleint в моем java-приложении, когда приходит запрос, он вызывает javafx и открывает webview после завершения работы webview, закрываю окна javafx с помощью метода Platform.exit (). когда приходит второй запрос, я получаю эту ошибку, как решить эту ошибку.
Код приложения JavaFx:
public class AppWebview extends Application {
public static Stage stage;
@Override
public void start(Stage _stage) throws Exception {
stage = _stage;
StackPane root = new StackPane();
WebView 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);
engine.setOnResized(new EventHandler<WebEvent<Rectangle2D>>() {
public void handle(WebEvent<Rectangle2D> ev) {
Rectangle2D r = ev.getData();
stage.setWidth(r.getWidth());
stage.setHeight(r.getHeight());
}
});
JSObject window = (JSObject) engine.executeScript("window");
window.setMember("app", new BrowserApp());
stage.show();
}
public static void main(String[] args) {
launch(args);
}
Метод RestClient: вызов приложения JavaFX
// method 1 to lanch javafx
javafx.application.Application.launch(AppWebview.class);
// method 2 to lanch javafx
String[] arguments = new String[] {"123"};
AppWebview .main(arguments);