Как изменить кодек для каждого плагина в Grails 3?

Хотя я понимаю, что это не лучшая практика, у меня есть много устаревших плагинов, которые я обновляю до Grails 3, и мне нужно вернуть их кодировку GSP к старому значению по умолчанию, равному none (потому что все уже закодировано там, где нужно). быть, и мы ожидаем незакодированные данные в другом месте.) К сожалению, похоже, что это не работает в соответствии с документацией.

В документах Grails 3.2.11 говорится:

Кодировка плагина

В Grails также есть возможность управлять кодеками, используемыми для каждого подключаемого модуля. Например, если у вас установлен плагин с именем foo, размещение следующей конфигурации в вашем application.groovy отключит кодирование только для плагина foo.

foo.grails.views.gsp.codecs.expression = нет

Это не сработало при использовании Grails 3.2.11. Кодировка по-прежнему html.

Другие вещи, которые я пробовал, также не сработали:

  • Просто изменение application.yml плагина со значений по умолчанию (мне кажется, что это было бы идеально, и я изначально ожидал, что будет управлять кодировкой плагина)
  • Та же строка в runtime.groovy
  • Та же строка в plugin.groovy плагина
  • Та же концепция с префиксом как в приложении, так и в файле application.yml плагина.
  • Изменения в соответствии с предложениями в Как я могу исключить плагин из кодировки gsp по умолчанию grails?

Я вполне готов записать это как ошибку Grails, но решил сначала спросить здесь, если кто-то уже решил эту проблему!

Заранее спасибо!


person Daniel    schedule 05.07.2017    source источник
comment
Сегодня открыл github.com/grails/grails-core/issues/10722.   -  person Daniel    schedule 10.07.2017


Ответы (1)


Ответ см. в связанной проблеме Grails; короткая версия такова:

  • все кодеки должны быть действительными, или используются значения по умолчанию из-за исключения, возникающего при обработке кодека.
  • плагины должны быть очищены перед публикацией, иначе предварительно скомпилированные gsps могут по-прежнему использовать предыдущие кодеки
person Daniel    schedule 23.08.2017