547 Commits

Author SHA1 Message Date
Oliver Gierke
d9cfbbfc42 DATAREST-693 - After release cleanups. 2015-10-14 14:19:20 +02:00
Spring Buildmaster
e78c0a56af DATAREST-693 - Prepare next development iteration. 2015-10-14 04:15:56 -07:00
Spring Buildmaster
39fee70e13 DATAREST-693 - Release version 2.2.4.RELEASE (Evans SR4). 2015-10-14 04:15:54 -07:00
Oliver Gierke
32a686b8cd DATAREST-693 - Prepare 2.2.4.RELEASE (Evans SR4). 2015-10-14 11:25:07 +02:00
Oliver Gierke
c3d4ddf3b7 DATAREST-693 - Updated changelog. 2015-10-14 11:25:05 +02:00
Oliver Gierke
0a3209a489 DATAREST-663 - Updated changelog. 2015-10-14 09:24:21 +02:00
Oliver Gierke
6f465d74c3 DATAREST-634 - Updated changelog. 2015-10-14 09:23:54 +02:00
Oliver Gierke
c66f877b0b DATAREST-628 - Updated changelog. 2015-10-14 09:23:42 +02:00
Oliver Gierke
bff2b97659 DATAREST-601 - Updated changelog. 2015-10-14 09:23:32 +02:00
Oliver Gierke
5ce77dcc36 DATAREST-602 - After release cleanups. 2015-07-01 01:41:48 +02:00
Spring Buildmaster
061c56ae29 DATAREST-602 - Prepare next development iteration. 2015-06-30 16:30:52 -07:00
Spring Buildmaster
65ba37f266 DATAREST-602 - Release version 2.2.3.RELEASE (Evans SR3). 2015-06-30 16:30:50 -07:00
Oliver Gierke
2f324b11ac DATAREST-602 - Prepare 2.2.3.RELEASE (Evans SR3). 2015-07-01 00:12:30 +02:00
Oliver Gierke
1bdcf508b6 DATAREST-602 - Updated changelog. 2015-07-01 00:12:27 +02:00
Oliver Gierke
0e72f55b82 DATAREST-603 - Updated changelog. 2015-06-30 14:34:26 +02:00
Oliver Gierke
0440fdb592 DATAREST-563 - Updated changelog. 2015-06-30 14:34:16 +02:00
Oliver Gierke
038ad5e9ee DATAREST-493 - Updated changelog. 2015-06-30 14:33:53 +02:00
Oliver Gierke
b50efd3f38 DATAREST-588 - Tweak ResourceSupportHttpMessageConverter to really reject all non-configured types.
We now override canRead(Type, Class<?>, MediaType) and tweak some of the delegate to reflect the patch in Spring HATEOAS spring-hateoas/#360 but without having to upgrade to the new version.
2015-06-24 17:29:11 +02:00
Greg Turnquist
aac4a0a8d0 DATAREST-576 - Remove old Markdown docs 2015-06-13 17:56:21 +02:00
Greg Turnquist
ba6d0f8698 DATAREST-535 - Add documentation about overriding SDR handlers 2015-06-01 14:46:49 +02:00
Oliver Gierke
1e223bd762 DATAREST-556 - Fixed JsonNode handling for PUT/PATCH with a custom field naming strategy.
The preparation of the JsonNode that we map onto the domain object now correctly looks up fields by their mapped names. Previously we accidentally checked the incoming JSON for fields with raw unmapped property names with caused fields invalid detected or not detected if a custom Jackson naming strategy was in place.
2015-05-26 18:03:16 +02:00
Andy Wilkinson
f335d30f11 DATAREST-538 - Expose Jackson converter beans as being TypeConstrained…Converters.
Previously, RepositoryRestMvcConfiguration exposed its two ResourceSupportHttpMessageConverter beans as MappingJackson2HttpMessageConverters. This made it impossible for Spring Boot support for conditional beans to identify that they were type-constrained and, therefore, were not a suitable replacement for a general-purpose Mapping Jackson2HttpMessageConverter bean.

This commit updates RepositoryRestMvcConfiguration to expose both of its Jackson message converters as TypeConstrinaedMappingJackson2HttpMessageConverter instances. This will also Spring Boot to identify that their converters are type-constrained so that it can continue to auto-configure its general purpose converter. This is important as it allows Boot to provide a converter that honors the user’s configuration rather than Spring MVC’s default converter which does not. See spring-projects/spring-boot#2914 for details.

Original pull request: #174.
2015-05-14 17:21:21 +02:00
Oliver Gierke
46e16cde90 DATAREST-537 - Fixed removing array elements in JSON Patch operations.
Before replacing the remove operation with a custom one that nulls out the object, we check whether the JSON Pointer points to an array element. If that's the case we skip the replacement and proceed.
2015-05-09 16:56:29 +02:00
Oliver Gierke
b4bfee3bc5 DATAREST-302 - Rendering projections includes/keeps links.
We now treat embedded projections as Resource instances and equip them with a self link. This should also allow to register ResourceProcessor instances for projection types to even add projection specific links if necessary.

Also removed the explicit removal of the association link in case a projection is rendered for an association.
2015-04-02 17:03:16 +02:00
Oliver Gierke
e32589e403 DATAREST-500 - Enable lazy-loading proxy resolution on Hibernate 4 module.
We now explicitly activate the resolution of lazy-loading proxies on Hibernate 4 to make sure not already populated lazy-loading proxies are actively resolved.
2015-03-30 21:55:56 +02:00
Oliver Gierke
2de98cbfd6 DATAREST-498 - IncomingRequest now correctly evaluates parameterized media types.
IncomingRequest.isJsonPatchRequest()/….isJsonMergePatchRequest() previously did a hard equals comparison to the media type discovered in the request. This fails if the request's media type contains parameters (e.g. the charset).

We now rather use MediaType.isCompatibleWith(…) to compare the media types more leniently.

Renamed test case to match conventions so that the Maven build actually executes them.
2015-03-30 21:53:28 +02:00
Greg Turnquist
b104d5dd61 DATAREST-478 - Polished up bits of documentation.
Original pull request: #169.
2015-03-22 18:07:12 +01:00
Greg Turnquist
d36e342b56 DATAREST-453 - Added appendix linking to Spring Data examples.
Added a new section that lists Spring Data REST specific example projects.

Original pull request: #168.
2015-03-22 18:06:38 +01:00
Oliver Gierke
8414b290b9 DATAREST-491 - Fixed handling of non-entity maps in JSON processing.
During our custom JSON handling on PUT requests, we previously piped all JSON objects through code that expected that one to be mapped to a PersistentEntity. This fails for JSON objects that basically represent maps.

We now skip that code paths for non-entity properties.
2015-03-20 09:41:52 +01:00
Oliver Gierke
3b0e34e98a DATAREST-487 - Updated changelog. 2015-03-06 08:23:08 +01:00
Oliver Gierke
91dacf9484 DATAREST-485 - Fixed handling of empty requests for RepositoryPropertyReferenceController.createPropertyReference(…).
The test case introduced for DATAREST-482 failed when running against Spring 4.1 generation as the handling of empty request payload changed slightly in 4.1. We now explicitly use required = false to get null handed into the controller and manually default the Resources<Object> in it.

Related tickets: DATAREST-482, SPR-12778.
2015-03-03 09:51:47 +01:00
Greg Turnquist
0f4067a166 DATAREST-450 - Migrate wiki content to reference docs.
Scrubbed old format. Lightened up paging section and focus more on "next"/"prev" hypermedia controls and their benefit. Moved several sections under one top level section called "Customizing Spring Data REST". Cleaned up index.adoc to match the style of Spring Data JPA. Removed JSONP section.
Remove embedded entity operations, based on old spring-data-rest-compact media type. Utilized relative leveloffset for each include. Corrected some ALPS mistakes.

Original pull request: #162.
2015-02-27 10:13:12 +01:00
Greg Turnquist
1f482f17fb DATAREST-451 - Add projection and excerpt to reference documentation.
Original pull request: #163.
2015-02-25 17:20:25 +01:00
Greg Turnquist
632d60f7bc DATAREST-452 - Add ALPS metadata to reference documentation.
Original pull request: #164.
2015-02-25 15:45:47 +01:00
Oliver Gierke
8fba7dc6db DATAREST-463 - Polishing.
Collapsed if clauses leading to the very same return in RootResourceinformationToAlpsDescriptorConverter. Renamed isExportableProperty(…) to isExportable(…) in JacksonMetadata. Removed commented out code in AssociationLinks. Cleanups in test code.

Original pull request: #160.
2015-02-22 15:30:02 +01:00
Greg Turnquist
180d0ce3f4 DATAREST-463 - Hide ignored attributes from ALPS metadata.
If @JsonIgnore is applied to either a field or a getter method for an association, then do not expose that property's metadata down from ALPS.

Original pull request: #160.
2015-02-22 15:28:35 +01:00
Oliver Gierke
67e368e3c7 DATAREST-459 - After release cleanups. 2015-01-28 17:43:01 +01:00
Spring Buildmaster
2b6f96d149 DATAREST-459 - Prepare next development iteration. 2015-01-28 07:31:27 -08:00
Spring Buildmaster
fd7d3cf7d9 DATAREST-459 - Release version 2.2.2.RELEASE (Evans SR2). 2015-01-28 07:31:18 -08:00
Oliver Gierke
54fe5f1414 DATAREST-459 - Prepare 2.2.2.RELEASE (Evans SR2). 2015-01-28 12:09:28 +01:00
Oliver Gierke
9f2682150f DATAREST-459 - Updated changelog. 2015-01-28 11:24:09 +01:00
Oliver Gierke
b59e272ab2 DATAREST-458 - Updated changelog. 2015-01-28 10:16:21 +01:00
Oliver Gierke
2376f14b72 DATAREST-470 - Moved to EclipseLink JPA API JAR instead of Hibernate. 2015-01-27 22:22:29 +01:00
Oliver Gierke
64137658ba DATAREST-468 - Added patch media types to documentation section of item resources. 2015-01-27 08:31:36 +01:00
Oliver Gierke
cecdde96ca DATAREST-461 - Ignore unmapped properties when applying PUT requests.
We now make sure that unmapped properties (e.g. by using @JsonIgnore) are ignored when applying PUT request payloads. To do so we now basically use the merging algorithm used for PATCH requests but make sure we fill up the request payload with explicit null values for all mapped but not contained properties.
2015-01-21 14:51:16 +01:00
Oliver Gierke
93202f3696 DATAREST-460 - Polished RepositoryRestMvcConfiguration to fix CGLib proxying.
Made private methods that call @Bean methods protected so that they can become subject to CGLib proxying. Inlined getDefaultedRelProvider().
2015-01-20 10:39:41 +01:00
Oliver Gierke
0f2533885f DATAREST-418 - Updated changelog. 2015-01-20 08:08:14 +01:00
Neeme Praks
72f50e9f79 DATAREST-457 - Fixed typo in JavaDoc of BaseUri.
Original pull request: #159.
2015-01-20 08:00:37 +01:00
Oliver Gierke
527ac2903f DATAREST-446 - Removed RepositoriesUtils in favor of RepositoryMetadata.
To be sure to pick up domain type lookup customizations we now consistently use RepositoryMetadata instead of trying to be clever and re-detecting it via RepositoriesUtils.
2015-01-16 13:15:49 +01:00
Oliver Gierke
8f4c49bc16 DATAREST-445 - Fixed domain type lookup in RepositoryCollectionResourceMapping.
We now use the domain type provided by RepositoryMetadata instead of manually looking up to be sure to pick up customizations correctly.
2015-01-16 12:25:42 +01:00