Comments (9)
The exporter currently only exports query methods, not customly implemented ones. Jon and me have already discovered the "issue" and a fix will be part of the next release.
from spring-data-rest.
Oliver, thanks a lot to both of you. I am waiting for it! :-)
from spring-data-rest.
Any news on this enhancement?
from spring-data-rest.
@olivergierke and @jbrisbin, I opened this issue ten months ago. Any chance that it will be included in a further release?
from spring-data-rest.
There is significant work involved in "abstracting the abstractions" to allow for this, particularly in spring-data-commons. A community contribution would be very welcome in this area (and probably the absolute fastest path to implementation).
from spring-data-rest.
I am a bit hesitant on this one and vote to not have a quick shot for it. Here's the rationale:
Currently we expose two major aspects of the repositories. The first one is CRUD methods. This can be done as they map onto HTTP verbs nicely. The second ones are declarative query methods as we can derive a resource identifier as well as the appropriate HTTP method to be used (GET
). While we can definitely build up an identifier for the manually implemented method but we cannot derive the appropriate HTTP method by default.
What I can imagine is some sort of annotation that allows to define which method to use (@RequestMapping
might be a candidate as well as @RestResource
although the latter already seems to suffer from semantic overload depending on where it is used) and the exporter expecting the method to be present.
SD Commons already exposes RepositoryInformation
instances through the Repositories
helper class. The former already has an isCustomMethod(…)
method to detect whether the method to handle is a custom one. Depending on how much time we find in the 1.1.0 timeframe, this might be a candidate for inclusion into this release. But as I said, right now you can simply declare a controller, wire the repo into it and manually map and execute the call, so it's not really a hit the wall scenario.
from spring-data-rest.
Hi,
I would be fine with @olivergierke's suggestion regarding the manual creation of a controllers and afterwards linking the repository methods into it. What would be really helpful to complete the API "style" is that these manually created controllers would be referenced in host:8080/api. Essentially that what I pointed out here: #92
from spring-data-rest.
Having you tried creating a ResourceProcessor<Resource<Link>>
to modify the list of repositories?
from spring-data-rest.
Nope, not yet. What would be the way to go here?
from spring-data-rest.
Related Issues (20)
- Upgrade to Spring Security 6.1.7 for integration tests
- Release 4.1.11 (2023.0.11)
- Release 4.2.5 (2023.1.5)
- Release 4.3 RC1 (2024.0.0)
- Upgrade to MongoDB driver 5
- Upgrade to Hibernate 6.5.0.CR1
- Release 4.1.12 (2023.0.12)
- Release 4.2.6 (2023.1.6)
- Release 4.3 GA (2024.0.0)
- [FEATURE REQUEST]: Spring Data JPA Support for Apache Delta Lake HOT 1
- Document error codes for ItemResources HOT 2
- Release 4.2.7 (2023.1.7)
- Release 4.3.1 (2024.0.1)
- Release 4.4 M1 (2024.1.0)
- [Question] Understanding links generated by Spring Data Rest HOT 1
- Support record for projections
- Release 4.2.8 (2023.1.8)
- Release 4.3.2 (2024.0.2)
- Switch to Broadcom docker proxy
- StackOverflowError in SDR 4.3 when calling PATCH with nested bidirectional relations HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from spring-data-rest.