Hehe, yeah, unlimited sounds a bit extreme! But a hard limit of 256 is extreme in its own way.
I can certainly appreciate the move away from globals, but isn't application configuration by definition "global" to some extent? Isn't that part of the conundrum of dealing with config? How do other projects deal with it? Maybe they just suck it up and accept the globalization? :-) Incidentally, I can see the need for this value to come from config but also be overrideable by param on a case by case basis, perhaps from an annotation somewhere. Certain requests may have different limits on how big their collections need to be.
I actually flirted with the idea of attempting to extend play.data.Form (2.2.x version) and override bind(...) to add the additional param, but that quickly became untenable (if it wasn't already) due to how involved the method appears to be. It makes a lot of private method calls. I even tried copying Form.java in toto and adding the single line change we wanted, which was easy and worked, but that is a whole other kind of fugly.
What if the Form took a collection limit as an optional settable param, which it could pass to the databinder? It would not be a config and is something of a stopgap approach, but at least we would have a degree of control we need but don't have.
-GBS