Hola, estoy generando una aplicacioncilla web y tengo un pequeño problema, hago la peticion Ajax que es la siguiente:
Código javascript
:
Ver originalnew Ajax.Request(
"datos.jsp",
{method: 'post',
parameters: {anios: aniosSelect, meses: mesesSelect},
onRequest: function()
{
//alert('Iniciando Request');
},
onComplete: function()
{
//alert('Request terminado');
},
onSuccess: function(response)
{
var datosGrid = response.getHeader("grid").evalJSON(true);
for(j = 0; j < tablas.length; j++){
actualizarTabla(tablas[j], datosGrid);
}
},
onFailure: function()
{
//alert('Request fallido!');
}
});
Como observais, traigo un objeto JSON desde un JSP, hasta ahi bien, en el datos.jsp trabajo los datos y en un determinado momento convierto el array resultante a JSON y lo meto en el response:
Código jsp:
Ver original//Respuesta
Gson gson = new Gson();
String grid = gson.toJson(tablaGrid);
String grafDatosSuma = gson.toJson(tablaGrafDatosSuma);
String grafValoresSuma = gson.toJson(tablaGrafValoresSuma);
String grafDatosMedia = gson.toJson(tablaGrafDatosMedia);
String grafValoresMedia = gson.toJson(tablaGrafValoresMedia);
String pivotDatos = gson.toJson(datosS);
response.resetBuffer();
response.addHeader("grid", grid);
response.addHeader("grafDatosSuma", grafDatosSuma);
response.addHeader("grafValoresSuma", grafValoresSuma);
response.addHeader("grafDatosMedia", grafDatosMedia);
response.addHeader("grafValoresMedia", grafValoresMedia);
response.addHeader("pivotDatos", pivotDatos);
response.setContentType("application/json");
response.setStatus(response.SC_OK);
if (response.isCommitted() == false){
response.flushBuffer();
}
Como podeis ver uso GSON, bien a parte del datosGrid, en el response meto otras cosas que necesito, ya que hago 4 llamadas AJAX por el momento, mas tarde intentare unificarlas. El objeto array me lo convierte perfectamente a JSON sin problema, esta comprobado con un println en el log del server, pero luego en el onSucces de la peticion AJAX me devuelve un null, que es lo raro.
Y lo mas raro, es que esto no pasa siempre, sospecho que es por tamaño, ¿Hay algun tamaño maximo para el response? ¿O un numero maximo de headers?
A ver que me podeis decir...
Gracias de antemano!