如何在 Grails 3 中更改每个插件的编解码器?



虽然我知道这不是"最佳实践",但我有很多遗留插件正在升级到Grails 3,我需要将它们的GSP编码设置回旧的默认值"none"(因为所有内容都已经在需要的地方进行了编码,我们希望在其他地方使用非编码数据。 不幸的是,根据文档,这似乎不起作用。

圣杯 3.2.11 文档说:

每个插件编码

Grails还具有控制每个插件使用的编解码器的能力。例如,如果您安装了一个名为foo的插件,那么在您的应用程序中放置以下配置.groovy将仅禁用foo插件的编码

foo.grails.views.gsp.codecs.expression = "none">

这在使用Grails 3.2.11时不起作用。 编码仍然是"html"。

我尝试过的其他事情,也没有奏效:

  • 只需从默认值更改插件的 application.yml(这对我来说似乎是理想的,并且是我最初期望的控制插件编码(
  • 同一行,在运行时.groovy
  • 同一行,在插件的 plugin.groovy 中
  • 前缀相同的概念,在应用程序和插件的应用程序中.yml
  • 如何从 grails 默认 gsp 编码中排除插件中的建议的更改?

我完全愿意把它写成一个 Grails 错误,但我想我会先在这里问,以防其他人已经解决了这个问题!

提前感谢!

有关答案,请参阅链接的 grails 问题;简短的版本是:

  • 所有编解码器都必须有效,或者由于编解码器处理中引发的异常而使用默认值
  • 插件应在发布前进行清理,否则预编译的 GSP 可能仍使用以前的编解码器

相关内容

  • 没有找到相关文章

最新更新