5

最初のリクエストでダウンロードした HTML に CSS をインライン化することで、一部のモバイル Web ページ (またはより正確にはサーバー リクエストの数) を最適化しようとしています。

これらのページは、Vosao ベースの CMS から配信され、Apache Velocity マクロを使用しています。

期待どおり、これはうまく機能します。

<link rel="stylesheet" type="text/css" media="screen" href="/file/downloads/contact.css" 

これは失敗します

<style>
#include( "/file/downloads/contact.css" )
</style>

Velocity がファイルを見つけられないため、この出力で

org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource '/file/downloads/contact.css'

そしてこれはログに

org.apache.velocity.runtime.log.CommonsLogLogChute log: ResourceManager : unable to find resource '/file/Downloads/contact.css' in any resource loader.
E 2012-06-20 13:59:19.688
org.apache.velocity.runtime.log.CommonsLogLogChute log: #include(): cannot find resource '/file/Downloads/contact.css', called at vm[line 7, column 3]

速度に関するドキュメント (リソースの ROOT プロパティに関するもの) を読み、ソース コードにも時間を費やしました。私はロード時にそのプロパティをいじりました....そして運がありません。

Velocity に /war ディレクトリ内の静的ファイルのインクルードを実行させるにはどうすればよいですか?

4

1 に答える 1

3

私はこのようにうまく使用しました:

<style type="text/css">
  #include("my/path/to/file/file.css")
</style>

ファイルパスが間違っているのではないでしょうか?

于 2016-12-08T12:50:13.647 に答える