Comments (3)
I do not believe the bug is in Jersey. The InputStream
has a strong contract, and the contract says
@throws IOException if an I/O error occurs.
Early EOF sounds exactly like an I/O error. So this is Jetty that does not follow the contract during HttpInput#read
.
We could wrap each IO operation into a try-catch, but that's just crazy - if one method can break the contract, any method can do it, and we would need to wrap all the methods into a try-catch, every single InputStream
and OutputStream
method used in all the places within the project.
from jersey.
ok, closing
from jersey.
@jansupol Note, InputStream implementation can throw far far more than IOException.
It can throw any IllegalArgumentException, OutOfMemoryException, NullPointerException, IndexOutOfBandException, and countless more. (check the implementation of InputStream.java in the openjdk source, and you'll find them easily. Also note that InputStream.java uses Objects.java in many places which increases the number of RuntimeExceptions you can get)
And then there's the implementations of the InputStream class (it's abstract ya know) that can throw all manner of RuntimeException as well.
from jersey.
Related Issues (20)
- Project Loom/JDK 21 compatible HOT 8
- Inquiry about Jersey Project Licensing and Third-Party Content Usage HOT 7
- jersey 3.1 default exception mapper message interferes with setStatusOverSendError=true
- [Feature request] Configuration options for multipart requests (Jersey 3.1.x) HOT 8
- `UriRoutingContext` may not log tracing events
- Each HTTP request unnecessarily starts a new thread, resource leak. HOT 6
- HttpUrlConnector to support domain fronting HOT 2
- Jersey 3.1.6 release HOT 2
- Jersey 3.0.x has no working provider that support Java 17, PATCH, and multipart attachments HOT 3
- JdkConnector does not properly cleanup ERROR state connections HOT 3
- NettyConnector does not respect timeouts HOT 7
- CVE-2023-4043 for jersey-media-json-binding dependency (parsson-1.1.1) HOT 2
- Injection error when using a `DynamicFeature` HOT 3
- Possible NPE in RequestContextFilter when other Filters prioritized
- Carrier Thread pinning on stack CommittingOutputStream.flushBuffer() HOT 9
- Jersey 3.1.7 release HOT 5
- Connection is not stable (wrong detection if SSL context is configured) HOT 1
- Preserve whitespace in Content-Type header HOT 5
- Unexpected javax.net.ssl.SSLHandshakeException in seemingly simple usage scenario with Jersey Client 2 (>= 2.41) HOT 9
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 jersey.