0

GateIn 3.6 (jboss as 7) で ext-js バージョン 3.4 を使用しています。GateIn では、いくつかの ext コンポーネント (特にツリー) が正常に動作していません。この問題は、JavaScript の圧縮メカニズムによるものだと思います。GateIn 3.2で同じ問題が発生し、GateIn 3.6でJava圧縮メカニズムが変更されたことがわかった後(このGateInではクロージャーコンパイラーを使用しています)、それでも同じ問題があります。これが私の問題の例です

ツリーローディングの同じコードを含む 2 つの例を作成しました
1 :- ここでは ext js関連のファイルは圧縮されていませ んwamp、xamp、jboss などのサーバー)

例 1 では、ツリーを展開できます。しかし、2 番目のケース (例 2 ) では、ツリーは最初のレベルのみ展開されました。この問題を解決するアイデアはありますか。

本番モードで圧縮せずに ext js ライブラリを直接指定することはできません。GateIn では、gatein-resources.xml ファイル内で Java スクリプトが指定されているためです。本番モードでは、デフォルトで GateIn は、クロージャ コンパイラを使用して gatein-resources.xml 内のファイルを圧縮すると思います。

4

1 に答える 1

1

ext-js スクリプトを非圧縮にするオプションがある場合は、次のいずれかを実行できます: - gatein
-resources.xml を使用する代わりに、doHeaders メソッドを使用してスクリプトを追加します: resources.xml で JavaScript をインポートし、gatein/conf/controller.xml にルート (圧縮パラメーターを取得しないルート) を追加して圧縮の例外を作成します。

<route path="/scripts/{gtn:version}/{gtn:scope}/">
  <route-param qname="gtn:handler">
    <value>script</value>
  </route-param>
  <path-param qname="gtn:version" encoding="preserve-path">
    <pattern>[^/]*</pattern>
  </path-param>
  <route path="/{gtn:resource}{gtn:lang}-min.js">
    <path-param qname="gtn:resource">
      <pattern>(ext-core-debug)</pattern>
    </path-param>
    <path-param qname="gtn:lang" capture-group="true">
      <pattern>-([A-Za-z]{2}(-[A-Za-z]{2})?)|</pattern>
    </path-param>
  </route>
</route>

<route path="/scripts/{gtn:version}/{gtn:scope}/">
  <route-param qname="gtn:handler">
    <value>script</value>
  </route-param>
  <path-param qname="gtn:version" encoding="preserve-path">
    <pattern>[^/]*</pattern>
  </path-param>
  <route path="/{gtn:resource}{gtn:lang}{gtn:compress}.js">
    <path-param qname="gtn:resource">
      <pattern>.+?</pattern>
    </path-param>
    <path-param qname="gtn:lang" capture-group="true">
      <pattern>-([A-Za-z]{2}(-[A-Za-z]{2})?)|</pattern>
    </path-param>
    <path-param qname="gtn:compress" capture-group="true">
      <pattern>-(min)|</pattern>
    </path-param>
  </route>
</route>

必要に応じて gtn:resource パラメータのパターンを調整します。これらのソリューションの 1 つを使用すると、パターンで定義したものを除くすべてのスクリプトが縮小されます。

于 2013-12-01T13:52:12.343 に答える