Stéphane Nicoll opened SPR-12706 and commented
BeanWrapper does not manage indexed access for an array if it has to create the actual array. This gives a weird situation where if the array is already initialized the bracket notation works but if the binder has to initialize it it always fails with an ArrayIndexOutOfBoundsException as it creates an empty array by default.
Referenced from: commits 1646f62, aa21339