1

Spring MVC と extjs 4 のビューを使用してアプリを開発しています。この時点で、ユーザーのリストを表示するグリッドを作成する必要があります。

私のSpring MVCコントローラーには、「アイテム」をルートとしてjsonformatでユーザーのリストを返すGetメソッドがあります。

 @RequestMapping(method=RequestMethod.GET, value="/getUsers")
 public @ResponseBody Users getUsersInJSON(){
     Users users = new Users();
     users.setItems(userService.getUsers());
     return users;
 }

ブラウザでアクセスしようとすると、jsondata が正しく表示されます。

{"items":[{"username":"name1",".....

しかし、私の問題は Ext.data.Store のリクエストに関連しています

私のスクリプトは次のとおりです。

Ext.onReady(function(){

    Ext.define('UsersList', {
        extend: 'Ext.data.Model',
        fields: [
            {name:'username', type:'string'},
            {name:'firstname', type:'string'}
        ]
    });

    var store = Ext.create('Ext.data.Store', {
        storeId: 'users',
        model: 'UsersList',
        autoLoad: 'true',
        proxy: {
            type: 'ajax',
            url : 'http://localhost:8080/MyApp/getUsers.html',
            reader: {type: 'json', root: 'items'}
        }
    });



    Ext.create('Ext.grid.Panel',{
        store :store,
        id : 'user',
        title: 'Users',
        columns : [ 
            {header : 'Username',  dataIndex : 'username'}, 
            {header : 'Firstname', dataIndex: 'firstname'}
        ],
        height :300,
        width: 400,
        renderTo:'center'
    });
});

ストアがデータを取得しようとして http リクエストを起動すると、firebug コンソールに OPTIONS getUsers.html が表示され、ブラウザのリクエストは GET getUsers.html を起動します

その結果、Ext.data.Store には要素がなく、グリッドは列名とともに表示されますが、データは表示されません。多分私は何かを逃した

ありがとうございました

4

1 に答える 1