#実現したい事
<前提情報>
hoge.html :メソッドを呼び出す親画面
huga.html :別タブ(別画面)で開きたい画面
piyo.java : 親画面から呼び出されるメソッドを持つクラス
- hoge.html内のボタンを押下した時、piyo.javaのメソッドを呼び出す
- piyo.javaのメソッド内でデータの更新を行い、huga.htmlを別タブ(別画面)で開く
- 親画面はそのまま表示し続ける
上記のような動作を行いたいのですが、調べても情報が見つかりません・・・
(そもそもメソッド内から別タブを呼び出すというのは、web↔アプリサーバー間の通信の仕組み的に不可?)
今現在はhoge.html内でボタンを押下した時に、piyo.javaのメソッド呼び出しと並行してonclickを使い
Javascriptの関数を呼び出しその中でhuga.html別タブを開く、といった形で実装しています。
ただその場合Java側のメソッドの呼び出しとhuga.htmlを別タブで開く動作が平行してしまっている為か、
本来更新されるべき情報が更新されないままhuga.htmlが表示されてしまうのです。
※強制リロードを1度だけ行う事で最新化させ誤魔化している状態です、、、
最新化されない原因は
0. piyo.javaのメソッド内でhoge.htmlから情報を取得。セッションに格納。
0. huga.htmlが開かれたとき(huga.htmlと紐づくクラスのインスタンスが生成された時)に動作するinitメソッド内で
セッションに格納した情報を取得。その値を使い最新の情報を取得。フィールド変数に代入。
0. huga.htmlでそのフィールド変数の値を表示
というロジックを取っているからだと思います。
(※initが走る時点ではセッションに情報が格納されていない)
個人的には別タブで開きたいのならJavascriptを使った方が実装がしやすいし、むしろそうするべきなのでは?
と思いますが、「Java側でそれができるならそうしたい」と言われてしまったので質問させていただきました。
ちなみに、Java側でできないようであれば、値の受け渡しをセッションで行わず、hoge.htmlのJS処理で
huga.htmlを開くときにURLにパラメーターを持たせて受け渡すようにしようかなぁ~とざっくり考えています。
(セキュリティ的に表示されても問題が無い情報なので)
書いてて思ったのですがamazonとかもそういえばその方法でやってるっぽいような・・・?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。