1

Resources プラグインを使用した Grails 2.1.1。

私はjstreeライブラリを使用しており、テーマを利用しています。config でテーマ名を指定します。

"themes":{
   "theme":"default",
   "dots":false,
   "icons":true
}

そして、JavaScript はライブラリのパスに対して相対的にそれを見つけます。これは、URL が作成されて相対的であることを意味し、ドキュメントに追加されます。たとえば、次のようになります。

/a/js/jsTree/themes/default/styles.css

ApplicationResources.groovy に次のものがあります。

tree {
    resource url: '/js/jsTree/1.0/_lib/jquery.cookie.js'
    resource url: '/js/jsTree/1.0/_lib/jquery.hotkeys.js'
    resource url: '/js/jsTree/1.0/jquery.jstree.js'
}

これをSSLを使用してサーバーにデプロイすると、FirefoxとSafariで、そのstyles.cssがリソースプラグインが行う静的パスに302'dされていることがわかります。

/a/static/js/jsTree/themes/default/styles.css

そして、その新しいパスが取り込まれ、それが SSL 経由で送信されていることがわかります。ただし、Chrome では 302 が表示され、新しい URL が非 SSL を介してストリーミングしようとしていて、Chrome がそれを (静かに) ブロックしているため、ツリー スタイルがまったくレンダリングされず、明らかに使用できなくなります。

申し訳ありませんが、現時点では、誰でも公開できるこの問題の例を作成することはできません. 他の誰かが以前にこの状況に遭遇したことを願っています。

4

1 に答える 1

1

問題は、jsTree に関するものでした。jsTree に認識させるのではなく、URL を含めるように構成を変更しました。

"themes":{
    "theme":"default",
    "dots":false,
    "icons":true,
    "url": contextPath + "/js/jsTree/1.0/themes/default/style.css"
}
于 2012-10-16T16:10:17.473 に答える