概要
Liferayが使用しているAPIであるhistory.pushState()を使用している間、iOS Safariには既知の問題があります。 Liferay以外の問題は、以下のサイトで確認できます。
- スタックオーバーフロー。iOS版Safariで履歴APIを使用するとアラート、確認、プロンプトが動作しない
- Github.iOS Safariでバックブレイクのアラート/確認/プロンプトダイアログをナビゲートする
- スタックオーバーフロー。戻るボタンをクリックしたときにキャッシュからSafariが読み込まれないようにする
この問題により、iOSでSafariを使用している場合、Webコンテンツ表示ポートレットをページから削除することができなくなります。
解決策
Liferay内での唯一の解決策は、ポータル内のSPAを無効にすることです。 これは、このプロパティを portal-ext.properties に設定することで行うことができます。
javascript.single.page.application.enabled=false
SPAを無効にすると、ポータル上のページのロード時間を増やすことができることに注意してください。
Liferay内のSPAについては、以下をお読みください。 Liferay開発の概要