0

Portlet 2.0 APIを使用してポートレットからポータルベースURL(http://www.thisismyportal.comなど)を取得することは可能ですか?

今、私はそれを連結して手動で構築することを計画していますPorletRequest.getServerName()PortletRequest.getServerPort()そしてPortletRequest.getContextPath(); しかし、それはちょっと不器用なようです(そしてありませんPortletRequest.getProtocol()

4

2 に答える 2

1

不器用ですが、URLを作成する最も安全な方法です。方法はありませんPortletRequest.getProtocol()が、その方法を使用してプロトコルを締結できますPortletRequest.isSecure()

いくつかの理由から、ベースURLに外部構成を使用しないことをお勧めします。

まず、環境(テスト、統合、本番など)間で維持するためのさらに別の構成項目になります。現在の要求を使用して完全に再現可能なものを構成で保持する理由はほとんどありません。

次に、特定の状況下では、特定のURLをポータルの「ベースURL」として指定できない場合があります。例として、ポータルサーバーが複数のホストまたは複数のホストエイリアスに関連付けられている場合があります。

于 2012-10-30T05:54:48.780 に答える
0

これらの構成プロパティは、電子メールで送信するための外部URLを生成する目的でリソース環境プロバイダーにありました。これは特定の解決策であり、他のプロパティもそこに保存されていたため、実行時に利用可能になることがわかっていたため、問題はありませんでした。それがあなたのニーズに合っているかどうかはわかりません。シナリオによって異なります。また、ログイン時にのみhttpsを使用したため、常にhttpURLを生成しました。

お役に立てれば。

于 2012-10-01T09:32:47.813 に答える