-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Quarkus 3.15.1 JAX-RS/REST builds fail with UnsupportedOperationException #43816
Comments
This is a blocking issue for us, we can't upgrade to 3.15.x until we find a solution.
Note @SdlValid is defined as this but these have not changed so I don't think its relevant. The bug started to occur after adding the |
I have a little more data to report. When it fails I noticed that the entity being created/edited doesn't actually have any of the Note our views use inheritance so Ingest also contains Abridged which the entity does have. In any case Quarkus should just use the specified view. Here is our View structure: `public class Views {
` Also Quarkus should have better logging output so that it reports why its failing. Currently I'm still blocked on this. |
Also just to be clear I saw some discussion on this feature, my understanding this is supported by Quarkus OpenAPI microprofile via smallrye/smallrye-open-api#1209 correct? It works most of the time but not always. |
Is this something that #43849 would address? |
/cc @FroMage (rest), @stuartwdouglas (rest) |
You would have to build main.
It will be available with |
Just to clarify, it's a difference with how OpenAPI operates or it's a difference at the REST level? Did you change the REST layer you are using while upgrading (RESTEasy Classic vs Quarkus REST maybe?). |
@gsmet It was mainly a difference in how OpenAPI operates. For request body's it is ignoring @JSONVIEW if applied on the method. Moving to the request body normally works but not always, when it doesn't work we get the build error. Also yes we also are now using Quarkus REST not resteasy. Regarding building main so I can test this new update, that is very challenging I get a build errors at some point. I have tried commenting out failing modules like Gradle but it is not generating the quarkus-universe-bom which our code needs to build. |
@gsmet Because I was having trouble building Main I pointed to your 999-SNAPSHOT that I understand you build daily and the bug is fixed. However if I'm reading your PR date and the latest snapshot date correctly it seems your PR was after the latest 999-SNAPSHOT which appears to have the fix?? So my next question is how quickly can we get this fix in either 3.15.2 (ideal) or 3.16.0? However if it was fixed post 3.15.1 release and before your PR how would we know what the fix was? However I did do a partial local build before I just switched to your 999-SNAPSHOT so it's possible that I did successfully build the code that has your PR. We did a test building on a different system pointed at your 999-SNAPSHOT repo and its not fixed. We will test on that same system tomorrow with the next snapshot and it should confirm that your changes are what fixed this. I'd like to get it in 3.15.2 quickly if possible. |
There are multiple ways to build the project from
Then in a project that uses Quarkus you can use version |
@gsmet That is good build info. We have confirmed your PR fixes this issue and it's a blocker for us. We are wanting to check into our build pipeline the Quarkus update currently on 3.15.1. But need your fix first. We prefer 3.15.x as it's a LTS version but we could go to 3.16 if we have to. How soon could we get 3.15.2 or 3.16? |
The schedule for |
Describe the bug
We are upgrading a Quarkus 2.16.12 app to 3.15.1. We are also replacing our legacy swagger jars to generate the OpenApi files using the OpenAPI microprofile approach.
One of the differences we found is that if we put
@JsonView(Views.Ingest.class)
at the method level it only was applied to the GET operations. For POST & PUT operations we had to move the@JsonView(Views.Ingest.class)
to the RequestBody entity parameter. Without placing the annotation at the request body parameter it would always use the full entity spec instead of the one defined by@JsonView(Views.Ingest.class)
.However now that I have made this change for all of our REST services I get the following error. What is causing this? How can I fix this?
I am not using
@CustomSerialization
or@CustomDeserialization
in my code but Quarkus might be using these at build time.Thanks,
David
Expected behavior
Build would be successful.
Actual behavior
Generates the build error above.
How to Reproduce?
No response
Output of
uname -a
orver
No response
Output of
java -version
java 21.0.4 2024-07-16 LTS
Quarkus version or git rev
No response
Build tool (ie. output of
mvnw --version
orgradlew --version
)Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
Additional information
No response
The text was updated successfully, but these errors were encountered: