5

Grails 2.0.4 を使用しています。メールを作成する際に、絶対パスを含む多くの画像を使用します。それぞれが厄介なログエントリになります。簡単な修正はありますか?それらは存在しますが、リソースプラグインが絶対パスを好まないようです。これは、localhost / dev 環境の外でも発生します。

<img src="${resource(dir: 'images/brochure', file: 'arrow_up.png', absolute: 'true')}" alt="Up" />

結果は

WARN  resource.ResourceTagLib  - Invocation of <r:resource> for a resource that apparently doesn't exist: http://localhost:8080/images/brochure/arrow_up.png
4

4 に答える 4

4

Grails 2.1.x 以降 (最新の 2.3.x を含む) で私と協力してきた解決策は、これらのエントリを Config.groovy の log4j 構成ブロックに追加することです。その他のコード変更は必要ありません。

 log4j = {
           //your other stuff ...
            error 'grails.app.services.org.grails.plugin.resource'
            error 'grails.app.taglib.org.grails.plugin.resource'
            error 'grails.app.resourceMappers.org.grails.plugin.resource'
}
于 2014-05-07T00:56:59.367 に答える
0

これは古い質問であることは承知していますが、Grails 2.3.x ではまだ問題のようです。resourceクロージャの上に次のようなコメントがありResourceTagLibます。

@todo これは現在、absolute="true" の呼び出しでは機能しません。これらをパススルーする必要があります。

ログの警告を削除するために、resourceクロージャーをオーバーライドして、次のビットを変更しました。

...
if (!info.debug && log.warnEnabled) {
    log.warn "Invocation of <r:resource> for a resource that apparently doesn't exist: ${info.uri}"
}
...

これに:

...
if (attrs.absolute != true && !info.debug && log.warnEnabled) {
    log.warn "Invocation of <r:resource> for a resource that apparently doesn't exist: ${info.uri}"
}
...
于 2014-02-16T11:35:01.857 に答える
-1

「grails-resources」プラグインを使用しています。また、「リソース」というタグがあります。直接Gタグを使用してみてください:

<img src="${g.resource(dir: 'images/brochure', file: 'arrow_up.png', absolute: 'true')}" alt="Up" />

または、リソース プラグインの R タグを使用します (推奨):

<img src="${r.resource(uri: 'images/brochure/arrow_up.png')}" />

詳細はこちら

于 2012-07-16T07:03:41.427 に答える