【发布时间】:2012-07-26 05:45:41
【问题描述】:
我使用 Icefaces 和 JSF,但我遇到了这个问题:
我有以下网址:
http://myMappedServer/myApp/followingThings
我想在我的 xHtml 页面中获取值 http://myMappedServer/myApp
如何在不使用托管 bean 的情况下实现这一目标?
【问题讨论】:
我使用 Icefaces 和 JSF,但我遇到了这个问题:
我有以下网址:
http://myMappedServer/myApp/followingThings
我想在我的 xHtml 页面中获取值 http://myMappedServer/myApp
如何在不使用托管 bean 的情况下实现这一目标?
【问题讨论】:
使用 EL:#{request.contextPath}。
这对于创建导航链接非常有用,在您的主模板中设置一个 Facelets 变量:)
<ui:param name="root" value="#{request.contextPath}/" />
更新:它是not recommended to use the full path available in the app server,因为不能保证它是用户用来访问您的应用程序的同一个 URL,所以请注意这一点。
不过,如果你真的想要can do that,可以使用HttpServletRequest 中提供的一些方法来创建这样的字符串:
#{request.scheme}://#{request.serverName}:#{request.serverPort}#{request.contextPath}
【讨论】:
@ApplicationScoped bean 中。如果您出于某种原因真的不想这样做,也许您会更幸运地提出一个特定于您的代理的问题,例如“如何获取 nginx 后面的用户 url?”什么的。