-
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
Implement support for NDJSON streaming in vertex-web #18182
Conversation
Interesting.
@geoand FYI. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add some tests?
extensions/vertx-web/deployment/src/main/java/io/quarkus/vertx/web/deployment/Methods.java
Outdated
Show resolved
Hide resolved
@FroMage do you remember this one from your research around JSON streaming? |
I don't remember. But the issue was #13663 |
I could not run the tests for some reason locally, not in Idea and also not with maven.. In Maven instead I get errors like this:
when I run Any hints? In the meantime I wrote the tests and pushed hoping they are fine.. |
Try building the entire project with: |
Thanks, that did the trick, now I can run the test via Do you have an idea on why the modules got imported as java 8 when in the pom I've seen it's set |
That worked, should we add it to the CONTRIBUTION.md? Either in the Q&A section or in the Intellij IDE setup one. |
I added it this morning 🙂 |
@cescoffier is ready for merge? |
I noticed Vertx reactive routes support SSE but not NDJSON (usually is the one that is used by spring webflux). Spring Webflus was returning
application/stream+json
before but they are now switching toapplication/x-ndjson
, this is why I am using that content type.spring-projects/spring-framework#21283
If this integration is wanted I will polish and write test, otherwise I'll not waste more time on it, please let me know.
p.s. I did not touch the other supports but the the SSE one has a minor bug imho, the
initialize
function always applies the header since the headers are always empty. It is necessary to check therc.getAcceptableContentType()
method to verify if anybody set a custom produces value for the route. In case I can fix that too on the MultiSSESupport.