2011-01-14 2 views
0

オープンソーシャルガジェットでdojoウィジェットを使用することはできません。ここに私が従った手順があります
1.私は私のローカルマシンでtomcat 6.0.29でshacheというapacheを使用しています。 Tomcatは、これは私は、Apache ShindigのデフォルトのsamplecontainerにこのガジェットをテストしていガジェットXML
apache shindigコンテナ内のopensocialガジェットでdojoウィジェットを使用できません

</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. デフォルトのポート8080 2上で実行されています。 Google Chromeでテストしましたが、javascriptコンソールで次のエラーが表示されています

    Origin http://127.0.0.1:8080はAccess-Control-Allow-Originによって許可されていません。 キャッチされていないエラー: 'dijit.Editor'を読み込めませんでした。最後に、あなたがクロスドメイン権限エラーを取得している私が見ることができるから、」../dijit/Editor.js'

+0

上記のコードのdojoパスはhttp:// localhost:8080/samplecontainer/dojo1.5/dojo/dojo.jsです。エラー・トレース全体XMLHttpRequestはhttp:// localhost:8080/gadgets/concat?container =デフォルト&ガジェット= http%3A%2F%2Flocalhost%3A8080%2Fsamplecontainer%2Ftest_local.xml&debug = 0&nocache = 1&type = js&1 = http%3A%2F%2Flocalhost%3A8080%2Fsamplecontainer%2Fdojo1.5%2Fdojo%2F ../ dijit/Editor。 js。 Origin http://127.0.0.1:8080は、Access-Control-Allow-Originによって許可されていません。 –

答えて

0

を試してみました。つまり、dojoはAjaxでロードしようとします(Ajaxは別のドメインのリソースにアクセスできません)ので、エディタdijitをロードできません。このように愚かなことに、127.0.0.1:8080はlocalhost:8080とは異なるドメインとみなされます。

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

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

+0

私は両方を試しましたが、エラーが続く。 –

+0

この問題は、相互ドメインビルドdojoを使用して解決できます。 –

関連する問題