2012-07-27 113 views
3

我使用的ICEfaces和JSF,我有這樣的問題: 我有以下網址: http://myMappedServer/myApp/followingThings獲得url直到上下文路徑

我想在我的XHTML頁面獲得價值http://myMappedServer/myApp 我怎樣才能不使用託管bean實現這一點?

回答

9

使用EL:#{request.contextPath}

這是創建導航鏈接,在你的主模板來設置Facelets的變量:)非常有用

<ui:param name="root" value="#{request.contextPath}/" /> 

UPDATE:這是not recommended to use the full path available in the app server因爲它不能保證用戶使用同一網址訪問你的應用程序,所以,要小心這一點。

如果你真正想要的,但是,你can do that,使用HttpServletRequest的一些方法來創建這樣一個字符串:

#{request.scheme}://#{request.serverName}:#{request.serverPort}#{request.contextPath} 
+0

這說明我只/對myApp和我也需要是什麼之前。 – aika 2012-07-27 14:20:51

+0

@aika對,我已經更新瞭如何做到這一點的答案。但請注意,建議不要將其用於創建鏈接,因爲它不能保證與用戶訪問它的地址相同(例如,您的應用程序可能位於代理或負載平衡器之後)。 – elias 2012-07-27 14:49:33

+0

hello eljunior,的確我想獲得由代理映射的域。有什麼辦法可以做到嗎?謝謝:) – aika 2012-07-27 14:56:04