Commit Graph

1645 Commits

Author SHA1 Message Date
John Blum
91a38726f5 Release version 4.1.1 (2023.0.1).
See #2259
2023-06-16 08:05:36 -07:00
John Blum
37265c4b88 Prepare 4.1.1 (2023.0.1).
See #2259
2023-06-16 08:05:07 -07:00
Oliver Drotbohm
a33f2de445 Move off deprecation in Spring Security configuration for tests.
Related ticket #2271.
2023-06-13 13:35:39 +02:00
Oliver Drotbohm
a30b7c87d6 Upgrade to Spring Security 6.1 for testing.
Also, to ensure Spring Framework 6.1 compatibility.

Fixes #2271.
2023-06-13 11:49:42 +02:00
Mark Paluch
3858713a2e Upgrade to Maven Wrapper 3.9.2.
See #2269
2023-06-13 08:54:05 +02:00
Oliver Drotbohm
ecba61662c Fix regression in PUT handling for empty nested documents.
The fix for #2174 introduced a bug for our PUT handling of nested documents in case the target object's field value is null as it would only apply the nested value if all Optionals were present. This is, of course not the case.

Fixes #2264.
2023-06-12 11:40:28 +02:00
Oliver Drotbohm
2fb1fa9289 Avoid manually handling additional primitive elements in collection merging for PATCHes.
Fixes #2261.
2023-06-12 11:40:08 +02:00
Mark Paluch
88db91fff8 Polishing.
Update Java requirement.

See #2266
2023-06-06 10:31:13 +02:00
Mark Paluch
2f98617d44 Use snapshot and milestone repositories instead of libs-snapshot and libs-milestone.
Closes #2266
2023-06-06 10:31:13 +02:00
Mark Paluch
1c868c3915 Update Jenkins triggers after GA release.
See #2255
2023-05-12 14:52:46 +02:00
Christoph Strobl
3b806ee081 After release cleanups.
See #2255
2023-05-12 14:19:11 +02:00
Christoph Strobl
bfca1dfa0b Prepare next development iteration.
See #2255
2023-05-12 14:19:10 +02:00
Christoph Strobl
e1877c3f9f Release version 4.1 GA (2023.0.0).
See #2255
2023-05-12 14:14:39 +02:00
Christoph Strobl
26ae406bf9 Prepare 4.1 GA (2023.0.0).
See #2255
2023-05-12 14:14:07 +02:00
Oliver Drotbohm
9020e1d10d Upgrade optional Jackson/JPA integration to Hibernate 6.
Fixes #2234.
2023-05-03 23:01:57 +02:00
Will Fleury
816ca84e70 Populate custom ExceptionHandlerExceptionResolver with ApplicationContext.
Fixes #2245.
Original pull request #2246.
2023-05-03 17:05:52 +02:00
Blue Ye
ae42018aab Remove duplicate sentence from documentation.
Closes #2251
2023-04-25 11:31:54 +02:00
Greg L. Turnquist
fa6ee06cb5 After release cleanups.
See #2243
2023-04-14 12:00:03 -05:00
Greg L. Turnquist
3a7c81df17 Prepare next development iteration.
See #2243
2023-04-14 11:59:58 -05:00
Greg L. Turnquist
2039a15e59 Release version 4.1 RC1 (2023.0.0).
See #2243
2023-04-14 11:54:00 -05:00
Greg L. Turnquist
d1684bc16a Prepare 4.1 RC1 (2023.0.0).
See #2243
2023-04-14 11:53:23 -05:00
Mark Paluch
88b64141b6 Upgrade to Maven Wrapper 3.9.1.
See #2248
2023-04-06 16:16:35 +02:00
Greg L. Turnquist
48aa76ee51 Test against Java 20 on CI.
See #2244.
2023-03-30 10:37:16 -05:00
Greg L. Turnquist
0225ec1b45 Update CI properties.
See #2243
2023-03-28 13:58:20 -05:00
Christoph Strobl
5b016f2908 After release cleanups.
See #2229
2023-03-20 15:05:35 +01:00
Christoph Strobl
e5bc3be69a Prepare next development iteration.
See #2229
2023-03-20 15:05:34 +01:00
Christoph Strobl
00884c09c7 Release version 4.1 M3 (2023.0.0).
See #2229
2023-03-20 15:01:48 +01:00
Christoph Strobl
80ee34e1ba Prepare 4.1 M3 (2023.0.0).
See #2229
2023-03-20 15:01:20 +01:00
Mark Paluch
b084f67189 Polishing.
Fix invalid Javadoc references.

See #2239
2023-03-20 08:21:12 +01:00
Oliver Drotbohm
e4bca534bf Support to receive aggregate references as request parameters.
We now support using AggregateReference as type to bind request parameters taking URIs pointing to related aggregates. The default resolution will try to resolve the entire URI via UriToEntityConverter but one can also provide a function that can extract any part of the URI to be then resolved into either an identifier, aggregate instance or jMolecules Association against the ConversionService.

Fixes #2239.
2023-03-19 23:56:39 +01:00
Oliver Drotbohm
6d0034f15f Support for query methods returning a Slice.
Built on the the just introduced RepresentationModelAssembler implementations based on Slice in Spring HATEOAS and Spring Data Commons we now support returning a SlicedModel from the controller backing search resources ultimately triggering repository query methods.

The introduction triggered the refactoring to introduce RepresentationModelAssemblers (RMA) to remove the need for controllers inheriting from AbstractRepositoryController to access RepresentationModel assembly functionality. RMA acts as a facade for both Paged-/SlicedResourceAssembler as well as PersistentEntityResourceAssembler.

Fixes #2235.
2023-03-02 17:20:09 +01:00
Oliver Drotbohm
7c9a5275a3 Polish Javadoc. 2023-02-21 19:01:55 +01:00
Oliver Drotbohm
fb1924286a Use FormattingConversionService in JSON Patch binding.
We no pipe the Spring MVC ConversionService into the JSON Patch path binding. That usually is a FormattingConversionService at runtime and also supports the conversion of dates.

The ConversionServices is configured into the BindContext(Factory) we use for binding. The context then exposes the EvaluationContext set up with it.

Fixes #2233.
2023-02-21 18:43:19 +01:00
Oliver Drotbohm
2a88cc7ea6 Reference document updates for new return body on delete setting. 2023-02-21 17:48:15 +01:00
Oliver Drotbohm
d02d1bb0c1 Support for returning response bodies on deletion of item resources.
RepositoryRestConfiguration now allows to configure to return a response body for the deletion of item resources. The controller implementation follows the same patter we have already established for creation and updates: unless explicitly enabled or disabled we now consider the presence of an accept header as indicator of whether a response body should be rendered.

This could be a "breaking" change for clients having explicitly expected 204 until now even for requests with an Accept header. If that's an issue, those should either explicitly disable the setting, do not submit an Accept header or loosen their expectations to expect either 200 or 2xx as indicator of success in general.

Fixes #2225.
2023-02-21 17:25:28 +01:00
Oliver Drotbohm
7c0fc837a3 Register MVC validator with Spring Data REST HandlerAdapter.
Fixes: #967.
Original pull request: 2108.
2023-02-21 15:46:08 +01:00
zhengchalei
890111f06f Fix doc link end label in ResourceStatus.
Fixes #2139
2023-02-21 14:19:46 +01:00
Kai Toedter
b94f7d4b83 Fix link to HAL Explorer doc in README.adoc.
Fixes: #2151
2023-02-21 14:18:44 +01:00
Oliver Drotbohm
6c4f57f31a Avoid obsolete inspection of DefaultedPageable.
The instance can never be null and thus we don't actually have to check for that.

Fixes #2222
2023-02-21 14:14:38 +01:00
Oliver Drotbohm
b65e0c9118 Adapt to renamed properties by using MappedProperties in association deserialization.
Revert the changes that employed manual annotation lookup as that would cause invalid associations of fields and accessor methods for properties shadow renamed. Instead, we now use MappedProperties that already contains a mapping between the Jackson field names and Sprign Data property names.

Fixes: #2165
2023-02-21 13:26:14 +01:00
Lars Vierbergen
5335fe61e9 Fix mapping URIs to @JsonProperty annotated associations
Normally, when creating and updating (POST/PUT) an entity via the REST endpoints, you can use the URL of the relation target. (e.g.: send `{"package": "/packages/1"}` when `package` is a JPA `@OneToOne` relation).

Now this also takes into account when the JPA relation is annotated with `@JsonProperty` to change the serialized name.

Add unit tests for linkable associations.

Issue: #2165
2023-02-21 13:26:08 +01:00
Mikołaj Matuszewski
8d9855b57e Fix missing explanation for resource type indicator in reference docs. 2023-02-21 11:52:34 +01:00
Oliver Drotbohm
f18491f722 Properly deep-merge nested documents on PUT.
This is needed to consider read-only properties within those objects as those would otherwise get overridden.

Fixes: #2174
2023-02-21 10:36:38 +01:00
Mark Paluch
cdb4a5e053 Upgrade to Maven Wrapper 3.9.0.
See #2230
2023-02-20 11:58:15 +01:00
Christoph Strobl
feea7c0ae1 After release cleanups.
See #2228
2023-02-17 14:25:48 +01:00
Christoph Strobl
8443df3e7d Prepare next development iteration.
See #2228
2023-02-17 14:25:46 +01:00
Christoph Strobl
45d57fe97d Release version 4.1 M2 (2023.0.0).
See #2228
2023-02-17 14:22:31 +01:00
Christoph Strobl
15d3277f6d Prepare 4.1 M2 (2023.0.0).
See #2228
2023-02-17 14:22:18 +01:00
Christoph Strobl
3d4a3a1ad9 After release cleanups.
See #2204
2023-02-17 13:31:54 +01:00
Christoph Strobl
61f9db5935 Prepare next development iteration.
See #2204
2023-02-17 13:31:53 +01:00