Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support of Spring Data JPA specific JpaSpecificationExecutor #4040

Open
hantsy opened this issue Sep 16, 2019 · 10 comments
Open

Add Support of Spring Data JPA specific JpaSpecificationExecutor #4040

hantsy opened this issue Sep 16, 2019 · 10 comments
Labels
area/spring Issues relating to the Spring integration kind/enhancement New feature or request

Comments

@hantsy
Copy link
Contributor

hantsy commented Sep 16, 2019

Quarkus 0.22.0

I just tried Spring Data JPA feature, the first limitation is JpaSpecificationExecutor does not work.

https://github.com/hantsy/quarkus-sample/tree/master/spring-post-service

public interface PostRepository extends JpaRepository<Post, String>//, JpaSpecificationExecutor<Post>
{

}
@hantsy hantsy added the kind/bug Something isn't working label Sep 16, 2019
@geoand
Copy link
Contributor

geoand commented Sep 16, 2019

We have made it clear that not everything from Spring Data will work on Quarkus.
Can you give some details about how you usually use JpaSpecificationExecutor?

@geoand geoand added kind/enhancement New feature or request area/spring Issues relating to the Spring integration and removed kind/bug Something isn't working labels Sep 16, 2019
@hantsy
Copy link
Contributor Author

hantsy commented Sep 16, 2019

Some like the purpose I described in issue #4016 and #3965.

JpaSpecificationExecutor is to support JPA Criteria and also introduces a great Specification (a DDD concept) to satisfy Type-safe query requirements.

Many developers are practicing Typesafe query instead of string based query in development.eg. QueryDSL, JPA Criteria, JOOQ etc.

@geoand
Copy link
Contributor

geoand commented Sep 16, 2019

Thanks for the info.

When we have a general strategy around how Panache will handle such Typesafe handling, we can revisit this

@hantsy
Copy link
Contributor Author

hantsy commented Jul 23, 2023

@geoand Micronaut Data ports this Specification concept(a type safe approach to compose the query criteria) to almost all data modules, including Data Jdbc, Data R2dbc, and Data Hibernate Reactive.

@Michael-AT-Corporation
Copy link

@geoand I suppose it is still nowhere near to be supported, right? Although it would be nice 🙂
Maybe it could be added to the unsupported features in the spring-data-jpa documentation?

@geoand
Copy link
Contributor

geoand commented Jul 30, 2024

@Michael-AT-Corporation correct. We are likely to figure out the type-safe query strategy soon (cc @FroMage).
In the meantime, I opened #42216 to update the docs

@Michael-AT-Corporation
Copy link

@geoand Thanks for the info and for updating the documentation 🙂

@geoand
Copy link
Contributor

geoand commented Jul 30, 2024

🙏🏼

@FroMage
Copy link
Member

FroMage commented Jul 30, 2024

We are adding type-safe queries, but using HQL, not specifications. However thanks for the point, I've noted the use-case.

gastaldi added a commit that referenced this issue Jul 30, 2024
Add a note about JpaSpecificationExecutor not being supported
holly-cummins pushed a commit to holly-cummins/quarkus that referenced this issue Jul 31, 2024
gsmet pushed a commit to gsmet/quarkus that referenced this issue Aug 1, 2024
danielsoro pushed a commit to danielsoro/quarkus that referenced this issue Sep 20, 2024
@pipinet
Copy link

pipinet commented Oct 28, 2024

@geoand @FroMage @hantsy
Is there support for a JpaSpecificExecutor program? Because currently he can easily support Hibernate Data Repositories.
Micronaut Data also provides similar support.

This allows us to write more convenient、dynamic and typed JPQL。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/spring Issues relating to the Spring integration kind/enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants