JSF2 h:outputLink将冒号':'编码为%3A

时间:2012-12-27 12:27:15

标签: html jsf jsf-2 utf-8

我的网址为

/templates/includes/portal/Portal.xhtml?stparamdls=PRM0002:C:#{row.get("msm003_msa")}

被解释为

/templates/includes/portal/prashanthPortal.xhtml?stparamdls=PRM0002%3AC%3ADevloper

谁能告诉我为什么冒号被解释为'%3A'?

文档编码为UTF-8。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

这是因为:reserved characters in URL之一,因此需要通过百分比编码进行转义,以防止Web浏览器对其进行不同的解释。当参数作为<f:param>中的<h:outputLink>提供时,JSF将自动为您执行此操作。此行为完全正常且预期。

如果您遇到技术问题,那么它在其他地方引起,需要在其他地方解决,而不是在JSF <h:outputLink>中解决。