r:img ведет к неискаженному ресурсу
После обновления ресурсов Grails до последней версии я не могу показывать изображения. Вот что я попробовал;
<li><r:img file="zeitfest.png" dir="images" /></li>
<li><r:img uri="/images/zeitfest.png" /></li>
<li><g:img uri="/images/zeitfest.png" /></li>
<li><g:img plugin="zeitfest-office" uri="/images/zeitfest.png" /></li>
С помощью run-app
все работает нормально, однако используя war
и бегая внутри кота, я всегда получаю это:
[http-apr-8080-exec-7] ERROR org.grails.plugin.resource.ResourceMeta - Resource not found: /images/zeitfest.png
[http-apr-8080-exec-7] WARN org.grails.plugin.resource.util.ResourceMetaStore - Cannot locate resource [/images/zeitfest.png]
я добавил
grails.resources.adhoc.patterns = ['/images/*', '/css/*', '/js/*', '/plugins/*', "*.css", "*.js"]
grails.resources.adhoc.includes = ['/images/**', '/css/**', '/js/**', '/plugins/**']
grails.resources.mappers.cssrewriter.includes = ['**/*.css', '**/*.less']
grails.resources.mappers.csspreprocessor.includes = ['**/*.css', '**/*.less']
к моему Config.groovy
, Это все еще не показывает.
Я даже пытался ссылаться на изображение из комплекта ресурсов, но оно не работает.
images {
resource url:'images/zeitfest.png'
resource url:[plugin: "zeitfestOffice", dir: "images", file: "zeitfest.png"]
}
Что я могу проверить? Другие изображения, на которые ссылаются файлы CSS, работают нормально, и перезапись продолжается.
Использование 1.2.13 плагина ресурса.
1 ответ
Проблема заключалась в том, что я рендерил изображение из плагина (но внутри этого плагина). Поэтому тэг плагина должен использоваться везде. Однако комбинация с URI не работает. Итак, отсутствующая комбинация выше была:
<li><g:img plugin="zeitfest-office" dir="images" file="zeitfest.png" /></li>
Это единственная комбинация, которая будет работать!