I found this issue when using server-side processing with JQuery Datatables and attempting to populate.
Say I have this getter/field on my action:
My struts.xml is defined as follows:
However, the include patterns that are constructed within JSONUtil are not accurate. Instead of making the expected pattern that would work:
Only the following are created:
Because the first "listOfLists" is not created, the property is excluded in the results.
This all happens because of line 463 in JSONUtil:
Since we're going at the last index of the ARRAY_BEGIN_STRING string, it's skipping the first index. This could be updated to be smarter to build the include patterns as expected.