0

我的 grails 网站正确显示 UTF8 字符,例如字符“è”,但无法在元标记中正确显示它们;例如,在元描述中,相同的字符显示为"è". 我从以 UTF-8 编码的文本文件中读取字符串

可能是什么问题呢?

Grails 版本是 2.2.1

更新

即使只是在元描述中硬编码一个字符串,我也有同样的问题。GSP 文件被视为 ISO-8859-2 编码,但我似乎无法将其转换为 UTF-8

4

3 回答 3

0

您是否尝试禁用 sitemesh 对 gsp 页面的预处理?

在 Config.groovy 中:

grails.views.gsp.sitemesh.preprocess = false
于 2013-07-09T11:14:25.547 回答
0

我用 TagLib 修复了它

class SimpleTagLib {

 def unescaped = { attrs ->
      out << attrs.value  
  }

}

<meta content="${g.noEncode(value:'è')}" property="og:video" />
于 2013-07-09T17:30:45.217 回答
0

如果有人像我一样遇到这个问题,我已经通过创建一个以这种方式输出整个元标记的标记库来解决它:

标签库定义

def metaTag = { attrs ->
    out << '<meta name="' + attrs.name + '" content="' + attrs.value + '"/>'
}

然后我在这样的 .gsp 文件中使用它:

<p:metaTag name="description" value="+ěšřčžáéíáý"></p:metaTag>
于 2015-05-06T09:09:17.467 回答