【JavaScriptで開いたサブ画面をJava処理内で閉じたい】

実現したいこと

JavaScriptで開いたサブ画面をJava処理内で閉じたい

前提

jspにてOpenボタン押下時、JavaScriptにてサブ画面を開きます。
その後、Javaにリクエストを投げ、DBから取得した値をサブ画面に表示するといった機能を作っています。

発生している問題・エラーメッセージ

Java内でDBから値が取得できなかった場合、サブ画面を閉じたいのですが、
ScriptEngineManagerを用いて"window.close()"を実行すると、下記のエラーが発生してしまいます。

"window is not defined in <eval> at line number 1"

該当のソースコード

[Java]
ScriptEngineManager sem = new ScriptEngineManager();
ScriptEngine se = sem.getEngineName("JavaScript");

String script = "function close() { window.close()" }
se.eval(script);

Invocable inv = (Invocable) se;
inv.invokeFunction("close", "");

補足情報(FW/ツールのバージョンなど)

Java,JavaScriptどちらも初心者で躓いてしまいました。
解決方法をご存知の方、何卒宜しくお願いいたします。

コメントを投稿

0 コメント