如何更改 Grails 3 中的每个插件编解码器?
How to change per-plugin codec in Grails 3?
虽然我知道这不是“最佳实践”,但我有很多遗留插件正在升级到 Grails 3,我需要将它们的 GSP 编码设置回旧的默认值“none”(因为所有内容都已经在需要的地方进行了编码,我们希望在其他地方有未编码的数据。)不幸的是,根据文档,这似乎不起作用。
Grails 3.2.11 文档说:
Per Plugin Encoding
Grails also features the ability to control the codecs used on a per plugin basis. For example if you have a plugin named foo installed, then placing the following configuration in your application.groovy will disable encoding for only the foo plugin
foo.grails.views.gsp.codecs.expression = "none"
这没有用,使用 Grails 3.2.11。编码仍然是“html”。
我尝试过的其他方法也没有用:
- 只需更改插件的 application.yml 默认值(这对我来说似乎是理想的,并且是我最初期望控制插件编码的)
- 同一行,在runtime.groovy
- 同一行,在插件的 plugin.groovy
- 应用程序和插件的前缀概念相同 application.yml
- 根据 How can I exclude a plugin from grails default gsp encoding?
中的建议进行的更改
我非常愿意把它写成一个 Grails 错误,但我想我会先在这里问一下,以防其他人已经解决了这个问题!
提前致谢!
查看链接的 grails 问题以获得答案;简短版本是:
- 所有编解码器必须有效,否则由于编解码器处理中抛出异常而使用默认值
- 插件应该在发布前清理,否则预编译的 gsps 可能仍然使用以前的编解码器
虽然我知道这不是“最佳实践”,但我有很多遗留插件正在升级到 Grails 3,我需要将它们的 GSP 编码设置回旧的默认值“none”(因为所有内容都已经在需要的地方进行了编码,我们希望在其他地方有未编码的数据。)不幸的是,根据文档,这似乎不起作用。
Grails 3.2.11 文档说:
Per Plugin Encoding
Grails also features the ability to control the codecs used on a per plugin basis. For example if you have a plugin named foo installed, then placing the following configuration in your application.groovy will disable encoding for only the foo plugin
foo.grails.views.gsp.codecs.expression = "none"
这没有用,使用 Grails 3.2.11。编码仍然是“html”。
我尝试过的其他方法也没有用:
- 只需更改插件的 application.yml 默认值(这对我来说似乎是理想的,并且是我最初期望控制插件编码的)
- 同一行,在runtime.groovy
- 同一行,在插件的 plugin.groovy
- 应用程序和插件的前缀概念相同 application.yml
- 根据 How can I exclude a plugin from grails default gsp encoding? 中的建议进行的更改
我非常愿意把它写成一个 Grails 错误,但我想我会先在这里问一下,以防其他人已经解决了这个问题!
提前致谢!
查看链接的 grails 问题以获得答案;简短版本是:
- 所有编解码器必须有效,否则由于编解码器处理中抛出异常而使用默认值
- 插件应该在发布前清理,否则预编译的 gsps 可能仍然使用以前的编解码器