Comments (3)
I've reproduced this. The webserver immediately closes the connect upon hitting the exception which results in an empty response to the client. This is clearly a bug. On an error the server should be returning the correct HTTP status (maybe 400 in this case? See next point).
The next question is if the URL is valid as represented in the HTTP request sent to the server. It appears as though curl
is not encoding the URL. The webserver is assuming that incoming URLs are correctly encoded (as defined by the HTTP protocol). In this case the URL in the HTTP request is not URL encoded (It is not http://localhost:8080/greet/%E5%B0%8F%E9%AB%98
). And therefore the webserver gets the exception.
If you try the same thing but use a browser to enter the URL it should work, because the browser encodes the URL. It worked for me with both Chrome and Firefox.
But we do need to fix the error handling in the webserver so that it handles the exception and returns an HTTP status code.
from helidon.
@barchetta I've targeted this to 1.0
from helidon.
This is fixed by PR #796
from helidon.
Related Issues (20)
- 4.x Add next() for io.helidon.webserver.http.ServerRequest HOT 3
- session-token-config-file ADP supplier is never selected
- 4.x: Can't resolve `com.google.protobuf:protoc:exe:osx-aarch_64:3.5.1-1` on MacOS 14 on apple silicon
- Upgrade runners to MacOS 14
- 4.x: @HelidonTest / @AddConfig* Provide a config parser by type HOT 1
- Adopt Jersey 3.1.7
- Contexts#wrap(ExecutorService) doesn't propagate OTEL span HOT 7
- MicroProfile Config 3.1 HOT 1
- 4.x The received message "send" should be capitalized in io.helidon.examples.webserver.websocket.MessageBoardEndpoint.
- helidon se 4 native-image build error: HelidonFlavor was found in the image heap.
- MicroProfile Telemetry 1.1
- MicroProfile Rest Client 3.0.1
- Config - HOCON mapped Map has keys detached with extra parent key
- Support Originating IP discovery in Access Logging HOT 1
- 4.x: add tests for multiple JDK releases
- `OpenTelemetryTracer#spanBuilder` always sets parent to active span; should this be left to the developer?
- 4.x: MP `ConfigSource.getOrdinal()` always returns 100 if default ordinals are used
- 4.x: MP Config does not correctly handling per property overriding with config profiles HOT 1
- Weld uses synchronized in ApplicationScopedContextualInstanceStrategy, so carrier thread is pinned HOT 1
- Add support for Helidon 4 MP client and server
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 helidon.