Creation Grid (extj-js) à partir de JSONObject
Bonjour à tous !
Voilà, je suis depuis le début de cette journée coincé sur un problème qui me semble pourtant simple, mais dont je ne parviens pas à trouver une solution.
J'ai un formulaire réalisé en ext-js 4.2 qui envoie à un servlet java des données. Ces données sont effectivement reçues, et je les renvoies sous forme d'un JSONObject) au client (donc sur l'interface ext-js).
Je récupère bien ces données, mais je n'arrive pas à les mettre sous forme d'une grid en extjs ...
Voici la méthode principale du servlet :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
response.setContentType("text/html");
String nameSent = request.getParameter("name");
String dobSent = request.getParameter("dob");
String addrSent = request.getParameter("addr");
System.out.println("Name : " +nameSent+ " - Dob : " +dobSent+ " - Addr : " +addrSent);
JSONObject toSendBack = new JSONObject();
toSendBack.put("nameSent", nameSent);
toSendBack.put("dobSent", dobSent);
toSendBack.put("addrSent", addrSent);
toSendBack.put("success", true);
response.getWriter().print(toSendBack.toString());
response.setStatus(HttpServletResponse.SC_OK);
} |
Et voici le code ext-js :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| var form = Ext.create('Ext.form.Panel', {
renderTo : 'form',
frame : true,
title : 'Subscription',
width : 250,
url : 'TestServlet',
method : 'POST',
fieldDefaults : {
labelAlign : 'left',
labelWidth : 90,
anchor : '100%'
},
items : [{
xtype : 'textfield',
fieldLabel : 'Name ',
name : 'name',
allowBlank : false
}, {
xtype : 'datefield',
fieldLabel : 'Dob ',
name : 'dob'
}, {
xtype : 'textfield',
fieldLabel : 'Address ',
name : 'addr'
}, {
xtype : 'button',
text : 'Submit',
handler : function(){
var dataToSend = this.up('form').getForm();
dataToSend.submit({
success:function(form,action){
var result=Ext.JSON.decode(action.response.responseText);
resultPanel.items.items[0].setValue(result.nameSent);
},
failure:function(form,action){
alert("failure");
}
});
}
}]
}); |
Quelqu'un pourrait-il me mettre sur la piste ?
Je dois dire que je suis un peu désespéré ...
Grand merci aux courageux qui m'aideront :)