Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Servlets 读取JSON响应时遇到问题_Servlets_Request_Response_Extjs4.1 - Fatal编程技术网

Servlets 读取JSON响应时遇到问题

Servlets 读取JSON响应时遇到问题,servlets,request,response,extjs4.1,Servlets,Request,Response,Extjs4.1,我向servlet发出ajax请求,该servlet返回数据库查询的结果。 我可以用firebug看到响应,我想把这些结果放在我已经创建的列表(或其他…)中 我试着读书,但没用 代码: 这是ajax请求: Ext.Ajax.request({ url: '/VIProject/Container', success: function (action)

我向servlet发出ajax请求,该servlet返回数据库查询的结果。 我可以用firebug看到响应,我想把这些结果放在我已经创建的列表(或其他…)中

我试着读书,但没用

代码:

这是ajax请求:

                        Ext.Ajax.request({
                        url: '/VIProject/Container',

                        success: function (action){alert('Lista caricata!'); console.debug(action); },
                        failure: function (){alert('Errore nel caricamento...');},
                        headers: {
                            'my-header': 'foo'
                        },
                        params: { action: "GETCONTAINERLIST" }
                    });
来自servlet(firebug)的响应:

名单:

var listView=Ext.create('Ext.grid.Panel'{
宽度:425,
身高:250,
id:“lista”,
可折叠的:是的,
标题:“简单列表视图(已选择0项)”,
存储:/???
多选:对,
视图配置:{
emptyText:“没有要显示的图像”
},
栏目:[{
文本:“idOrdine”,
弹性:15,
可排序:是的,
数据索引:“idOrdine”
},{
文本:“上次修改”,
弹性:20,
可排序:是的,
数据索引:“numLotto”
}]
});

我该怎么办?

我已修改了您的代码以使用存储:

Ext.define('MyModel', {
    extend: 'Ext.data.Model',
    fields: ['idOrdine', 'numLotto']
})

var listView = Ext.create('Ext.grid.Panel', {
    width:425,
    height:250,
    id: 'lista',
    collapsible:true,
    title:'Simple ListView <i>(0 items selected)</i>',
    store: store: {
        model: MyModel,
        autoLoad: true,
        proxy: {
            type: 'ajax',
            url: '/VIProject/Container',
            reader: {
                type: 'json',
                root: 'container'
            }
        }
    },
    multiSelect: true,
    viewConfig: {
        emptyText: 'No images to display'
    },

    columns: [{
        text: 'idOrdine',
        flex: 15,
        sortable: true,
        dataIndex: 'idOrdine'
    },{
        text: 'Last Modified',
        flex: 20,
        sortable: true,
        dataIndex: 'numLotto'
    }]
});
Ext.define('MyModel'{
扩展:“Ext.data.Model”,
字段:['idOrdine','numLotto']
})
var listView=Ext.create('Ext.grid.Panel'{
宽度:425,
身高:250,
id:“lista”,
可折叠的:是的,
标题:“简单列表视图(已选择0项)”,
商店:商店:{
型号:MyModel,
自动加载:对,
代理:{
键入:“ajax”,
url:“/VIProject/Container”,
读者:{
键入:“json”,
根目录:“容器”
}
}
},
多选:对,
视图配置:{
emptyText:“没有要显示的图像”
},
栏目:[{
文本:“idOrdine”,
弹性:15,
可排序:是的,
数据索引:“idOrdine”
},{
文本:“上次修改”,
弹性:20,
可排序:是的,
数据索引:“numLotto”
}]
});

即使以这种方式工作:

        var proxy=new Ext.data.HttpProxy({url:'/VIProject/Container'});

    var reader=new Ext.data.JsonReader({},[
          {name: 'idOrdine', mapping: 'idOrdine'},
          {name: 'numLotto', mapping: 'numLotto'}
     ]);

     var store=new Ext.data.Store(    {
         proxy:proxy,
         reader:reader
     });

    store.load();

我试了各种方法。。但我不知道该怎么办

谢谢你的回答。我尝试了你的代码,但什么都没发生。我的列表为空..:s我有来自servlet的响应,但我无法使用此数据。。救命啊!你需要发布更多信息。它是否向服务器发出请求?此外,在代码中,从不渲染网格。你是在别的地方做的吗?
Ext.define('MyModel', {
    extend: 'Ext.data.Model',
    fields: ['idOrdine', 'numLotto']
})

var listView = Ext.create('Ext.grid.Panel', {
    width:425,
    height:250,
    id: 'lista',
    collapsible:true,
    title:'Simple ListView <i>(0 items selected)</i>',
    store: store: {
        model: MyModel,
        autoLoad: true,
        proxy: {
            type: 'ajax',
            url: '/VIProject/Container',
            reader: {
                type: 'json',
                root: 'container'
            }
        }
    },
    multiSelect: true,
    viewConfig: {
        emptyText: 'No images to display'
    },

    columns: [{
        text: 'idOrdine',
        flex: 15,
        sortable: true,
        dataIndex: 'idOrdine'
    },{
        text: 'Last Modified',
        flex: 20,
        sortable: true,
        dataIndex: 'numLotto'
    }]
});
        var proxy=new Ext.data.HttpProxy({url:'/VIProject/Container'});

    var reader=new Ext.data.JsonReader({},[
          {name: 'idOrdine', mapping: 'idOrdine'},
          {name: 'numLotto', mapping: 'numLotto'}
     ]);

     var store=new Ext.data.Store(    {
         proxy:proxy,
         reader:reader
     });

    store.load();