如何禁用Java中的HTML编码

时间:2017-05-03 07:49:06

标签: java html encoding

    task.addText(comment);

此评论包含HTML标记。因此,当我们将此评论作为邮件发送时,我们会在邮件中看到这样的编码HTML:

<h3>asdasas as<b>asdasdas</b>dasdas<u>dasdasdasd<strike>asdasdasdsadasdasdas<span id="selectionBoundary_1493731518682_030677381665187298" class="rangySelectionBoundary"></span></strike></u></h3>

我想看不到标签,我想看看标签为UI做了什么。

这是来自电子邮件正文部分的电子邮件数据库:

 b&gt;asdasdas&lt;/b&gt;dasdas&lt;u&gt;dasdasdasd&lt;strike&gt;asdasdasdsadasdasdas&lt;span id=&quot;selectionBoundary_1493731518682_030677381665187298&quot; class=&quot;rangySelectionBoundary&quot;&gt;&lt;/span&gt;&lt;/strike&gt;&lt;/u&gt;&lt;/h3&gt;</td>\n

这是电子邮件的html部分:

<p th:if="${!commentsInTask.empty}">Tüm yorumlar: </p>
<table

    <tbody>
    <tr th:each="allComments : ${comments}">
    <tr th:each="comment : ${comments}">
    </tr>
    </tr>
    </tbody>
</table>
</body>
</html>

非常没有解码但我从这里看到了

Java: How to unescape HTML character entities in Java?

并做了这个

comment=StringEscapeUtils.unescapeHtml(comment);

但没有用。

这是来自评论db:

<h3>asdasas as<b>asdasdas</b>dasdas<u>dasdasdasd<strike>asdasdasdsadasdasdas<span id="selectionBoundary_1493731518682_030677381665187298" class="rangySelectionBoundary"></span></strike></u></h3>

它与电子邮件数据库

相同

但它不应该将标签更改为&amp; lt

所以这意味着我想逃避HTML。我试过了

escapeHtml but did not work.

HtmlEscapers.htmlEscaper().escape(comment)

我们在放入html时也有这个

Context context = new Context(Locale.forLanguageTag("tr-TR"));
context.setVariables(comment);

并且百里香叶不起作用。转换为<td th:utext is not working.

正在这些之间发生

Context context = new Context(Locale.forLanguageTag(&#34; tr-TR&#34;));

context.setVariables(mail.getParams());

String process = templateEngine.process(mail, context);

因为之前

Context context = new Context(Locale.forLanguageTag("tr-TR"));
什么也没有。在那一行之后,

context.setVariables(mail.getParams());

它被解码了。

1 个答案:

答案 0 :(得分:0)

我认为找到了它:

$element.velocity("resume");

添加了删除标记和utext