in: coreIssues in core modules (aop, beans, core, context, expression)in: webIssues in web modules (web, webmvc, webflux, websocket)status: declinedA suggestion or change that we don't feel we should currently applytype: enhancementA general enhancement
JavaScript/Ajax frameworks such as jQuery serialize Javascript Objects as form parameters using indexed object notation (because in JavaScript, every object acts like a map). For example, the following JS object:
It would be helpful if this format could auto-bind to the root form object's 'connection' property of type JavaBean, which would have nested properties 'provider', 'userId', and 'accessToken'. JSR303 validation could then be easily run against that nested bean's properties for example. BeanWrapper can only map the above to a loosely typed Map now--I have to convert to a strongly typed JavaBean manually.
Affects: 3.1.1
Issue Links:
#13880 Provide a way to customize the names of JavaBean properties when they're read and written for data binding purposes
Corrected the example variable above to match the resulting serialized form.
Although BeanWrapperImpl can map the above to a Map, the more general syntax can include more deeply nested objects. I've created an issue project. The README page contains the output of more examples.
Since POST and PUT tend to send data in the body of the request, the jQuery .serialize() function is useful mainly for GET requests. Even there having serialized data as request parameters is convenient for simple cases but can get quite ugly (see some of these "extreme" examples).
in: coreIssues in core modules (aop, beans, core, context, expression)in: webIssues in web modules (web, webmvc, webflux, websocket)status: declinedA suggestion or change that we don't feel we should currently applytype: enhancementA general enhancement
2 participants
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.
Keith Donald opened SPR-9244 and commented
JavaScript/Ajax frameworks such as jQuery serialize Javascript Objects as form parameters using indexed object notation (because in JavaScript, every object acts like a map). For example, the following JS object:
Gets serialized as form parameters:
It would be helpful if this format could auto-bind to the root form object's 'connection' property of type JavaBean, which would have nested properties 'provider', 'userId', and 'accessToken'. JSR303 validation could then be easily run against that nested bean's properties for example. BeanWrapper can only map the above to a loosely typed Map now--I have to convert to a strongly typed JavaBean manually.
Affects: 3.1.1
Issue Links:
Referenced from: commits spring-attic/spring-framework-issues@4810d5b, spring-attic/spring-framework-issues@4b7474b, spring-attic/spring-framework-issues@4c4b3ef
The text was updated successfully, but these errors were encountered: