JSF请不要逃避我的HTML

时间:2011-09-16 09:23:18

标签: java javascript jsp jsf xss

从dbms我得到像<font color="red"> abc</font>这样的东西。当它到达我的xhtml文件中的${someManagedBean.someValue}时,输出被清理。对于99,999%的案例来说,这是非常好的。

问题:是否有某种方法可以禁用此自动转义功能?

奖金问题:我可以只允许使用HTML并禁止使用javascript吗?

3 个答案:

答案 0 :(得分:13)

<h:outputText value="#{someManagedBean.someValue}" escape="false" /> 

答案 1 :(得分:5)

https://docs.oracle.com/javaee/7/javaserver-faces-2-2/vdldocs-facelets/h/outputText.html

escape=false

不确定是否仅限制JS。您可能必须自己解析HTML以删除<script>和内容。


编辑 - 删除了链接(http://www.jsftoolbox.com/documentation/help/12-TagReference/html/h_outputText.html),因为它已过时。替换为Oracle链接。

答案 2 :(得分:0)

outputFormat标签可以帮到你。 请检查http://www.mkyong.com/jsf2/jsf-2-outputformat-example/