Missing post parameters when requesting tables with a huge amount of column by server-side processin

Missing post parameters when requesting tables with a huge amount of column by server-side processin

RonnyRonny Posts: 2Questions: 0Answers: 0

First of all, thank you for the great work done here.
I use the service-side processing of DataTables. My implementation is actually quite simple (see below) and it works fine in most cases, but for tables with more than 1600 columns the parameters (start, length, draw,...) are not transferred to the server. The function on the server is called correctly, but the parameter list is empty. Now my question is: Is there a limit to the maximum number of columns a table can have, because I have to display tables up to 3500 columns.

Cheers,
Ronny

$('#lazyLoadFinalMatrix').DataTable({
processing : true, ordering : false,
scrollX : true, serverSide : true,
ajax : { url : 'getMatrixAsync/final',
type : 'POST' }
});

Replies

  • allanallan Posts: 63,161Questions: 1Answers: 10,406 Site admin

    My guess is that the server has a limit on the number of parameters that can be sent to it. DataTables itself doesn't have a limit, and most server's don't, but they do have a soft limit. So depending on what http server you are using, you might need to check into that.

    Another option might be to use ajax.data to remove parameters you don't need. e.g. if you don't need to submit the columns data:

    data: function ( d ) {
      delete d.columns;
    }
    

    Allan

  • RonnyRonny Posts: 2Questions: 0Answers: 0

    Oh sorry, I forgot to mention what kind of backend I'm using. It is a Tomcat server and it seems that Tomcat has a limit, because with "delete d.columns" it works perfectly. Many thanks for this fast response. You saved my day.

    Ronny

This discussion has been closed.