2011-06-14 39 views
1

我嘗試使用dojox.data.JsonRestStore和我的RESTful服務。我通過sitepen和dojox文檔閱讀文章,但我無法理解它們的含義。 我的服務變得像http://<host>/rest/relatedsuggestion?query=weath&results=3請求並返回JSON如何在我的RESTful服務中使用JsonRestStore

{ 
Suggestions: [ 
    「weather channel」, 
    「weather forecast」, 
    「weather bbc」 
    ] 
} 

這意味着它無法理解像http://<host>/rest/relatedsuggestion/3這是在每一個教程中使用的要求。我怎樣才能讓它理解我的格式?據我所知,這個課程的答案也是不尋常的。

爲了儘量JsonRestStore我寫了下面模擬了網頁,五言它不工作,返回4個錯誤「錯誤類型:_57爲空」:

<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/dojo.xd.js" 
    djConfig="parseOnLoad: true"> 
    </script> 
    <script type="text/javascript"> 
     dojo.require("dojox.data.JsonRestStore"); 
     dojo.require("dojox.grid.DataGrid"); 

     dojo.addOnLoad(function() { 
      var poStore = new dojox.data.JsonRestStore({target:"http://<host>/rest/features/relatedsuggestion"}); 

      poStore.fetchItemByIdentity({ 
       identity:"3433", 
       onItem:function(poItem){ 
        poItem.completeOrder(); 
       } 
      }); 
     }); 
    </script> 
    <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dijit/themes/claro/claro.css" 
    /> 
</head> 

<body class=" claro "> 
    <div id="gridElement"></div> 
</body> 
+0

嗨基里爾,糾正我,如果我錯了,我認爲這是一個異步。所以poStore.fetchItemByIdentity代碼應該在dojox.data.JsonRestStore的onComlete方法中。 – rajkamal 2011-06-15 06:58:34

+0

我不知道,但文檔中沒有這樣的事件(有onDelete,onNew,onSet) – 2011-06-15 08:51:40

回答

0

這個IBM developerWorks文章可能是幫助:Use Dojo's JsonRestStore with your REST services

從您的描述來看,您的服務是非標準的,因此您需要對網址和響應進行調整以適應JsonRestStore的期望。該文章解釋瞭如何通過實施自己的服務來實現這一點。

相關問題