Commit Graph

1456 Commits

Author SHA1 Message Date
Oliver Drotbohm
eeee271b36 DelegatingHandlerMapping now fully implements MatchingHandlerMapping correctly.
We now also implement MatchableHandlerMapping.getPatternParser() to expose the PathPatternParser we use. This is needed to detect that DelegatingHandlerMapping uses a PathPatternParser from the outside as the Spring MVC request processing pipeline treats those HandlerMappings in a special way. This is especially important in the context of spring-projects/spring-framework#26814 as that makes the HM implementations work properly in CORS preflight requests.

When used with Spring Security in place, CORS preflight requests are inspected through the HandlerMappingIntrospector, that looks up the CORS configuration for the handler to serve the actual request. That lookup previously failed as Spring MVC was unable to detect that Spring Data REST's DelegatingHandlerMapping works with a PathPatternParser and didn't properly set up the processing pipeline to eventually end up in an invalid state, produce an exception that caused the handler method lookup to fail and cause Spring Security to fail with a 403, claiming the request was invalid.

Fixes #2007, #2054.
2021-08-19 23:31:56 +02:00
Oliver Drotbohm
f2f8775c03 Avoid eager reference to BackendIdConverter beans.
Switched to bean method parameter reference to all BackendIdConverter instances.

Fixes #2055.
2021-08-19 23:19:22 +02:00
Jens Schauder
b65addbed6 After release cleanups.
See #2045
2021-08-12 11:37:31 +02:00
Jens Schauder
7302b102aa Prepare next development iteration.
See #2045
2021-08-12 11:37:30 +02:00
Jens Schauder
31d9eacc4a Release version 3.5.4 (2021.0.4).
See #2045
2021-08-12 11:22:50 +02:00
Jens Schauder
f5df905be5 Prepare 3.5.4 (2021.0.4).
See #2045
2021-08-12 11:22:27 +02:00
Jens Schauder
afa949084b After release cleanups.
See #2031
2021-07-16 11:51:06 +02:00
Jens Schauder
1a92af0390 Prepare next development iteration.
See #2031
2021-07-16 11:51:03 +02:00
Jens Schauder
b786ac3219 Release version 3.5.3 (2021.0.3).
See #2031
2021-07-16 11:35:22 +02:00
Jens Schauder
8783074669 Prepare 3.5.3 (2021.0.3).
See #2031
2021-07-16 11:34:27 +02:00
Jens Schauder
dc6e317bc2 Updated changelog.
See #2031
2021-07-16 11:34:25 +02:00
David Lozano Jarque
a91eb5ae17 Reintroduce link to "Understanding HATEOAS" document.
As the "understanding" section is not published any more, move link to Markdown file in the GitHub repository.

Original ticket: DATAREST-1392
2021-07-16 09:16:21 +02:00
Max Brauer
c2f260fb88 Fix incomplete sentence in reference docs of association resources.
Fixes #372.
2021-07-16 09:10:33 +02:00
Thomas Küstermann
bf4b85503a Update documentation link to Spring HATEOAS's method links
Prefer link to official HATEOAS documentation rather than linking to the Github project README.
2021-07-16 09:07:54 +02:00
Joe Greubel
c6007bc06e Correct resource name in query method section.
Fixes #370.
2021-07-16 08:52:05 +02:00
Jay Bryant
49ee98874f Wording changes
Removed the language of oppression and violence and replaced it with more neutral language.

Note that problematic words in the code have to remain in the docs until the code changes.

Fixes #379.
2021-07-16 00:11:10 +02:00
Oliver Drotbohm
9b4c1df0d9 Consistent anchor names for headings in documentation. 2021-07-15 16:30:53 +02:00
Oliver Drotbohm
d7c20256fb Tweak upstream CI triggers to reduce build load.
We now only build upon changes made to Spring HATEOAS and Spring Data Commons.
2021-07-13 13:04:08 +02:00
Oliver Drotbohm
c3e02642d6 PersistentEntitiesResourceMapping.hasMappingFor(…) should lookup metadata on cache miss. 2021-07-13 09:42:29 +02:00
Oliver Drotbohm
659a502914 Prevent NullPointerException in AggregateReferenceDeserializerModifier.
In AggregateReferenceDeserializerModifier we now look up the original property name on the Jackson metadata before trying to resolve the property target type. We also explicitly guard against null values returned from that lookup and opt out of the customization in those cases.
2021-07-13 09:42:26 +02:00
Oliver Drotbohm
c46d23a53f RepositoryResourceMappings now processes all entities to detect repository mappings.
We now consider all registered PersistentEntity instances and try to detect repository metadata for them. A case we didn't cover before was that a repository was declared for an aggregate super type but the actual child aggregate class didn't have a dedicated repository declared. While this is a perfectly valid scenario, the mapping information was broken as it fell back on the plain domain type information and produced paths and relation names derived from that, even if there's a super type repository available.

Thus, solely traversing the aggregate types we have repositories registered for is not enough. We now traverse all known PersistentEntity types and also register repository metadata for all types that are assignable to a known domain type. The latter is actually implemented in Spring Data Commons' Repositories via spring-projects/spring-data-commons#2406.
2021-07-07 16:23:32 +02:00
Mark Paluch
58f16af7c0 After release cleanups.
See #2012
2021-06-22 16:05:23 +02:00
Mark Paluch
15c53e71de Prepare next development iteration.
See #2012
2021-06-22 16:05:20 +02:00
Mark Paluch
7dbfa65774 Release version 3.5.2 (2021.0.2).
See #2012
2021-06-22 15:52:29 +02:00
Mark Paluch
9b432802e2 Prepare 3.5.2 (2021.0.2).
See #2012
2021-06-22 15:51:40 +02:00
Mark Paluch
caa4cc0306 Updated changelog.
See #2012
2021-06-22 15:51:35 +02:00
Mark Paluch
643638bbcc Updated changelog.
See #2011
2021-06-22 15:29:55 +02:00
Oliver Drotbohm
4dd40f8ff5 Remove explicit Spring HATEOAS snapshot version.
See #2019.
2021-06-22 15:14:03 +02:00
Oliver Drotbohm
cb71facead Avoid using Guava's Charset.
Replaced with Java's StandardCharset. Fixes #2026.
2021-06-17 21:15:58 +02:00
Oliver Drotbohm
c90e542ad4 Added GraalVM resource-config.json to support HAL Explorer in native images.
Fixes #2025.
2021-06-17 20:16:38 +02:00
Oliver Drotbohm
64c349d04a Upgrade to Spring Security 5.3.9.
Fixes #2021.
2021-06-08 15:47:41 +02:00
Oliver Drotbohm
879671802c Conclude abbreviated sentence in reference docs.
Fixes #2016.
2021-06-08 15:08:50 +02:00
Greg L. Turnquist
43f3740921 Use Spring HATEOAS snapshots.
See #2019.
2021-06-03 12:15:46 -05:00
Greg L. Turnquist
ef4d2c9057 Drop explicit dependency on JSON Path.
Let Spring HATEOAS bring in this dependency.

See #2018.
2021-06-03 12:14:28 -05:00
Mark Paluch
7d29a5a798 After release cleanups.
See #1999
2021-05-14 12:34:22 +02:00
Mark Paluch
218ae09905 Prepare next development iteration.
See #1999
2021-05-14 12:34:18 +02:00
Mark Paluch
a5e7aa7011 Release version 3.5.1 (2021.0.1).
See #1999
2021-05-14 12:23:57 +02:00
Mark Paluch
38477d9f49 Prepare 3.5.1 (2021.0.1).
See #1999
2021-05-14 12:23:22 +02:00
Mark Paluch
19985b0563 Updated changelog.
See #1999
2021-05-14 12:23:18 +02:00
Mark Paluch
b800770633 Updated changelog.
See #1998
2021-05-14 12:06:45 +02:00
Oliver Drotbohm
f7419de5cb Upgrade to HAL Explorer 0.17.0.
Fixes #2010.
2021-05-14 11:09:44 +02:00
Kai Toedter
30bb6de79f Replaced HAL Browser documentation with HAL Explorer documentation.
Removed unnecessary CustomPostForm.js from HAL Explorer. HAL Explorer natively supports Spring Profiles. Update link in README.adoc to the HAL Explorer section in the reference docs Correct typo and incorrect description in HAL-Explorer section.

Fixes #2005.
2021-05-11 16:47:14 +02:00
Greg L. Turnquist
44213af672 Authenticate with artifactory.
See #1992.
2021-04-22 16:06:54 -05:00
Mark Paluch
afd29b5995 After release cleanups.
See #1992
2021-04-14 14:30:41 +02:00
Mark Paluch
754f3a77b4 Prepare next development iteration.
See #1992
2021-04-14 14:30:38 +02:00
Mark Paluch
8a690929f0 Release version 3.5 GA (2021.0.0).
See #1992
2021-04-14 14:18:49 +02:00
Mark Paluch
fc75262e5e Prepare 3.5 GA (2021.0.0).
See #1992
2021-04-14 14:18:22 +02:00
Mark Paluch
bf69835fe7 Updated changelog.
See #1992
2021-04-14 14:18:18 +02:00
Mark Paluch
f118abcf15 Updated changelog.
See #1993
2021-04-14 11:43:34 +02:00
Mark Paluch
26663c3ab6 Updated changelog.
See #1987
2021-04-14 11:17:42 +02:00