Skip to content

WIP: Spring boot 4 bump#193

Closed
lpedrosa wants to merge 1 commit into
perplexhub:masterfrom
lpedrosa:spring-4-bump
Closed

WIP: Spring boot 4 bump#193
lpedrosa wants to merge 1 commit into
perplexhub:masterfrom
lpedrosa:spring-4-bump

Conversation

@lpedrosa

@lpedrosa lpedrosa commented Nov 25, 2025

Copy link
Copy Markdown
Contributor

Bumping the dependencies to support Spring boot 4. There are two major things that Spring boot 4 brings in which affects this upgrade (full list of deps can be found here):

  • Hibernate 6 -> 7
  • Jackson 2 -> 3

As I've mentioned in this issue, Hibernate 7 moves some dialects to a separate community jar.

I'm ignoring DerbyDialect for now.

Jackson 3 wouldn't be an issue, except for the fact that we use hypersistence-utils-hibernate-XX for testing. It seems the library only supports Jackson 2 and Vlad doesn't want to upgrade it just yet.

I got around this by forcing Spring to use Jackson 2 for the tests, as suggested by the Spring boot 4.0 migration guide (check the changes in rsql-jpa/pom.xml). That seems to get the test running.

However, I get some test errors that I have no idea how to solve (I'm not a hibernate expert by any means).

For example:

[ERROR]   RSQLJPASupportTest.testJoinHints:175 » InvalidDataAccessApiUsage Could not resolve attribute 'departmentName' of 'io.github.perplexhub.rsql.model.Project'

It seems that in the previous version we could query for the departmentName attribute, assuming it exists in one of the children of the Project class hierarchy(deparmentName is an attribute of the AdminProject, but not of the DesignProject).

Maybe something changed in hibernate 7?

Let me know what you think @nstdio.

@lpedrosa lpedrosa mentioned this pull request Nov 25, 2025
@lpedrosa
lpedrosa marked this pull request as draft November 25, 2025 11:17
@nstdio

nstdio commented Nov 25, 2025

Copy link
Copy Markdown
Collaborator

@lpedrosa Surely Hibernate internal change must have caused this error. Do you have thoughts how to resolve?

@lpedrosa

Copy link
Copy Markdown
Contributor Author

No idea 😄. I'll have to do some googling when I have some time.

@nstdio

nstdio commented Nov 25, 2025

Copy link
Copy Markdown
Collaborator

@lpedrosa I believe we don't have a choice other then to use Hibernate specific API to resolve the "departmentName" issue. I think we can use org.hibernate.query.sqm.tree.domain.SqmPath#get(java.lang.String, boolean) method. Note that second parameter is boolean which is called includeSubtypes. So when passing second parameter as true should achieve what we need.

@nstdio

nstdio commented Jan 5, 2026

Copy link
Copy Markdown
Collaborator

@lpedrosa would be able to dedicate some time finalize the PR? If no I can take it from here.

@nstdio

nstdio commented Jan 8, 2026

Copy link
Copy Markdown
Collaborator

Superseded by: #197

@nstdio nstdio closed this Jan 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants