在JSP中转义和取消转换HTML实体

时间:2015-04-12 15:31:03

标签: html jsp entity

我在.TAG文件上有一个字符串,它是HTML转义的。现在,我需要缩短这个字符串,以便' x'是它的最大尺寸。然后,我需要追加" ..."它。

问题在于,如果这些" ..."被转义为HTML实体我得到类似" $ qu ..."因为我弄乱了实体。

解决这个问题的最简单方法是什么?我想 - >解码HTML - >缩短并添加" ..." - >重新编码。

但是,我只能找到fn:escapeXML,这不是我想要的。

是靠自己的逻辑做到的唯一方法吗?

1 个答案:

答案 0 :(得分:0)

我用潦草解决了这个问题。我只是导入了一个Java Utlity类,它提供了这种编码和解码功能。

没有比这更好或更顺畅的方式^。唯一可行的更好的方法是你可以在后端计算字符串。在我的情况下是不可能的。

请记住使用:

<%@tag import="org.apache.commons.lang.StringEscapeUtils" %>

导入.TAG文件中的内容的语法。 @page import不会在这里工作,因为它不是一个页面。这让我困惑了一段时间,我认为不可能将Java-Class导入.TAG文件,直到我随机想出来。

^只有这样才能使用EL和JSTL手动进行编码和解码(创建一个包含所有HTML实体的数组,fn:replace,...)。大量的愚蠢工作要做,最好使用其中一个邪恶的Scriplets,imho:)