0

オープン ソーシャル ガジェットで Dojo ウィジェットを使用できません。従った手順は次の
とおりです。 1.ローカルマシンのTomcat 6.0.29でApache shindingを使用しています。Tomcat はデフォルトのポート 8080 で実行されています。 2. これはガジェット xml です。

  </ModulePrefs>
  <Content type="html">
    <![CDATA[
 <link rel="stylesheet" ....type="text/css"/>
 <script type="text/javascript" src="path/to/local/dojo.js"></script>
    <script>
    function loader () {
        dojo.require ("dijit.Editor");
        dojo.addOnLoad(callback);
    }

    function callback () {
        new dijit.Editor ({}, dojo.byId("editorNode"));
    }

    dojo.config.parseOnLoad = true;
    dojo.config.dojoBlankHtmlUrl = '/blank.html';
    dojo.addOnLoad(loader);
</script>
<div id="editorNode" class="tundra">Hello, xcc world!</div>

    ]]>
  </Content>
</Module>
  1. このガジェットは、Apache shindig のデフォルトのサンプル コンテナでテストしています。Google Chrome でテストしたところ、javascript コンソールに次のエラーが表示されました。

    オリジンhttp://127.0.0.1:8080は Access-Control-Allow-Origin で許可されていません。不明なエラー: 'dijit.Editor' を読み込めませんでした。最後に試した「../dijit/Editor.js」

4

1 に答える 1

0

私が見る限り、クロスドメイン許可エラーが発生しています。これは、dojo が Ajax を使用してエディター dijit をロードしようとするため (そして Ajax は別のドメインのリソースにアクセスできないため)、エディター dijit をロードできないことを意味します。ばかげているように聞こえますが、127.0.0.1:8080 は localhost:8080 とは別のドメインと見なされます。

したがって、http://127.0.0.1:8080から shindig サーバーにアクセスする代わりに、 http://localhost:8080からアクセスしてみてください。

それが役立つかどうか教えてください。

于 2011-01-14T21:54:23.023 に答える