【发布时间】:2015-03-06 13:42:02
【问题描述】:
在我的应用程序中有一堆消息包作为属性文件。通过<spring:message code="code.here"> 在JSP 文件中查找这些消息。这可行,并且所有特殊字符都会在浏览器中按应有的方式呈现。
现在我需要在其中一个 JSP 文件中添加一些额外的逻辑,并在其位置添加一个 servlet 来完成它的工作并使用 req.getRequestDispatcher("/jsp/some_file.jsp").include(req, resp); 呈现 JSP。
这主要是有效的,但现在所有特殊字符(在我的例子中是德语变音符号)都被破坏了。出于某种原因,消息标签中的变音符号呈现不正确。举例来说,“ungültig”这个词出现了
00000000 75 6e 67 ef bf bd 6c 74 69 67 0a |ung...ltig.|
在浏览器中。我知道这是UTF-8 encoded Unicode replacement character,但我不知道它为什么会在那里。
资源文件都有正确的编码,事实上,为了安全起见,我们的资源文件都是ASCII码,“ungültig”实际上编码为ung\u00FCltig,其中0xFC is the encoding of ü in ISO-8859-1定义为所需的编码用于 Java 的属性文件。
我不知道为什么会这样。为什么突然渲染不正确,如何解决?
【问题讨论】: