« Previous | Next » 

Revision 4ffcef32

ID4ffcef32bca0ee9d05c743126ce9c4fd0904d726

Added by Bastian Waidelich over 9 years ago

[BUGFIX] Router overrides request arguments

With the reworked Request stack, the router kicks in after
the action request have been built, overriding all arguments
the respective route specifies.

This works for the most cases, but leads to issues when you
try to specify part of a complex target argument via the route
and part via request.

For example if you update a domain model via request body but
specify the model itself through the URI like
http://domain/products/product-1 - now the Identity-RoutePart
detects "product-1" and turns it into the corresponding
__identity-array but then the Router kicks in and overrides
the "product" argument completely resulting in a new object
to be created by the property mapper.

This change adjusts the Router to recursively merge arguments
with the route values instead, with precedence to the route
values.

Change-Id: I22edc9e871b8b6e5baa731fe30e944f3e5575d05
Fixes: #37445
Releases: 1.1, 1.2

  • added
  • modified
  • copied
  • renamed
  • deleted