0

次の方法で、gatein-resources.xml(GateIn 3.6を使用しています)にExtJS(ExtJs 3.2を使用しています)ライブラリを追加しました


<module>
            <name>ext-base</name>
            <script>
                <path>/javascript/lib/ext-2.1/adapter/ext/ext-base.js</path>
            </script>

    </module>
<module>
            <name>ext-all</name>
            <script><path>/javascript/lib/ext-2.1/ext-all.js</path></script>
            <depends>
                <module>ext-base</module>
            </depends>
    </module>
    <module>
            <name>extCommons</name>
            <script><path>/javascript/commons/extCommons.js</path></script>
            <depends>
                <module>ext-base</module>
            </depends>
    </module>
.....
    <portal>
        <name>MyPortal</name>
        <module>
            <depends>
                <module>ext-base</module>
            </depends>
            <depends>
                <module>extCommons</module>
            </depends>
            <depends>
                <module>ext-all</module>
            </depends>
        </portal>

しかし、GateIn を起動すると、firebug コンソールでExt not definedエラーが発生しました。

また、ここは、 gatein-resources.xml ファイルによって処理された ext-base.js ファイルを添付しています (元の ext-base.js は次のとおりです)。

しかし、GateIn 3.2 では問題なく動作しています。そのバージョンでは、javascript gatein-resources.xml ファイルを追加するために <javascript> タグを使用しました。しかし、このタグは GateIn 3.6 では推奨されていないため、gatein-resources.xml で上記のタグを使用しています。

この問題の再現方法: - ここでは、GateIn の開始時に gateIn のヘッダー タグに含まれる ext-base.js ファイルと、gatein-resources.xml を介して追加されたこの ext-base.js ファイルを示します。これが元の ext-base.js ですこれらのファイルの両方の違いは、gatein の ext-base.js にあります。これには、次の追加のコード行が含まれています。


define('SHARED/ext-base', [], function() {
var require = eXo.require, requirejs = eXo.require,define = eXo.define;
eXo.define.names=[];
eXo.define.deps=[];
return //Continued by original ext-base code
});

ただし、このコードを firebug コンソールで実行して 'Ext' コマンドを実行すると、firebug は"Ext not defined"というエラーを返します。 ここに画像の説明を入力 しかし、元のコードを実行すると、'Ext' コマンドを正常に実行できます。 ここに画像の説明を入力 「GateIn を開発モードとして使用しています」と繰り返します

4

1 に答える 1