Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Go to file
Lachlan 6e8457cfde
Fixes to QPACK configuration from SETTINGS frames. (#9728)
* Improved configuration upon sending/receiving SETTINGS frames.
* Improved handling of blocked frames in HTTP3StreamConnection.
* Fixed locking and reentrance in QPACK encoder/decoder.

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-05-15 15:07:33 +02:00
.github Correct usages of matrix.languages 2023-03-21 07:55:58 -05:00
.mvn Enable errorprone and spotbugs for java 17 (#7604) 2022-02-17 10:12:01 +10:00
apache-jsp Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
apache-jstl Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
build-resources Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
demos Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
documentation Fixes #7091 - Add SOCKS5 support. 2023-05-03 19:40:55 +02:00
javadoc Issue #9631 - use correct artifactId for exclusions 2023-05-05 16:41:27 +10:00
jetty-alpn Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-annotations Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-ant Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-bom Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-cdi Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-client Fixes #7091 - Add SOCKS5 support. 2023-05-03 19:40:55 +02:00
jetty-deploy Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-fcgi Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-gcloud Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-hazelcast Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-home Issue #9631 - use correct artifactId for exclusions 2023-05-05 16:41:27 +10:00
jetty-http Merge pull request #9634 from eclipse/jetty-10.0.x-9554-qpack-hpack 2023-05-08 12:48:48 +10:00
jetty-http-spi Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-http2 Issue #9554 - rename NBitIntegerParser and NBitStringParser to decoders 2023-05-04 09:31:20 +10:00
jetty-http3 Fixes to QPACK configuration from SETTINGS frames. (#9728) 2023-05-15 15:07:33 +02:00
jetty-infinispan Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-io Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-jaas Bump apache.directory.api.version from 2.1.2 to 2.1.3 2023-05-01 00:58:27 +00:00
jetty-jaspi Issue #9631 - update remaining pom.xml files 2023-05-05 16:36:55 +10:00
jetty-jmx Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-jndi Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-jspc-maven-plugin Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-keystore Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-maven-plugin Issue #9631 - update remaining pom.xml files 2023-05-05 16:36:55 +10:00
jetty-memcached Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-nosql Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-openid Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-osgi Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-p2 Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-plus Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-proxy Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-quic Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-quickstart Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-rewrite Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-runner Fixing jetty-runner it tests invoker install missing deps 2023-04-19 06:34:53 -05:00
jetty-security Add tests for combining of Constraints as per spec (#9664) 2023-05-10 17:13:58 +02:00
jetty-server Fix #9685 Date is not a content header (#9687) 2023-04-29 13:36:12 +02:00
jetty-servlet Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-servlets update javadoc and add log warning message for PushSessionCacheFilter 2023-05-02 12:02:16 +10:00
jetty-slf4j-impl Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-start Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-unixdomain-server Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-unixsocket Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-util Issue #9554 - changes from review 2023-05-04 09:26:31 +10:00
jetty-util-ajax Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-webapp Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
jetty-websocket remove longLengthAccumulator field in websocket Parser 2023-05-09 19:02:39 +10:00
jetty-xml Updating to version 10.0.16-SNAPSHOT 2023-04-11 13:23:25 -05:00
logos Issue #4572 - Mechanical Change to use org.slf4j 2020-03-16 15:48:25 -05:00
scripts Fixing release script 2021-10-06 14:23:15 -05:00
tests H3: Fix racy read from stream-less channel (#9761) 2023-05-15 09:50:36 +02:00
.gitattributes Updating attributes 2020-09-25 09:48:38 -05:00
.gitignore Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-3550-QueuedThreadPool-cleanup 2019-04-25 06:53:07 +02:00
.lgtm.yml Create .lgtm.yml 2021-01-25 15:58:41 -05:00
CODE_COVERAGE.md http-spi test improvement (#62) 2016-05-04 10:56:56 +10:00
CONTRIBUTING.md Testing gpg signature setup 2019-09-25 12:42:32 -05:00
Jenkinsfile Beef up `ci` profile to make it easier to run in the same modes on local machine 2023-03-01 13:08:51 -06:00
Jenkinsfile-autobahn Run WebSocket Autobahn test for all Jetty, Javax and Core APIs (#7430) 2022-01-31 15:29:41 +10:00
Jmh_Jenkinsfile Merge branch 'jetty-9.4.x' into jetty-10.0.x 2019-07-09 12:57:26 +10:00
KEYS.txt add GPG key and developer tag 2020-11-04 17:25:11 +01:00
LICENSE Issue #5784 - Fixing LICENSE file 2020-12-10 15:45:35 -06:00
NOTICE.txt Issue #3578 - Adopt EPL-2.0 for Jetty-10. 2020-01-09 20:10:19 +01:00
README.md Update README about build tools (#9545) 2023-04-05 08:59:50 -05:00
SECURITY.md Update SECURITY.md (#9333) 2023-02-14 08:30:51 -06:00
VERSION.txt Update VERSION.txt: Jan is now using IntelliJ (#9666) 2023-05-03 19:24:24 +02:00
header-template.txt Happy no year 2023-02-15 15:22:32 +11:00
pom.xml Issue #9631 - update remaining pom.xml files 2023-05-05 16:36:55 +10:00

README.md

Eclipse Jetty Canonical Repository

This is the canonical repository for the Jetty project, feel free to fork and contribute now!

Submitting a patch or pull request?

Make sure you have an Eclipse Contributor Agreement (ECA) on file.

Project description

Jetty is a lightweight highly scalable java based web server and servlet engine. Our goal is to support web protocols like HTTP, HTTP/2 and WebSocket in a high volume low latency way that provides maximum performance while retaining the ease of use and compatibility with years of servlet development. Jetty is a modern fully async web server that has a long history as a component oriented technology easily embedded into applications while still offering a solid traditional distribution for webapp deployment.

Webapp Example

$ mkdir base && cd base
$ java -jar $JETTY_HOME/start.jar --add-modules=http,deploy
$ cp ~/src/myproj/target/mywebapp.war webapps
$ java -jar $JETTY_HOME/start.jar 

Embedded Example

Server server = new Server(port);
ServletContextHandler context = new ServletContextHandler(server, "/");
context.addServlet(MyServlet.class, "/*");
server.start();

Documentation

Project documentation is available on the Jetty Eclipse website.

Building

Apache Maven 3.8.0 and OpenJDK requirements:

Branch Maven Version Minimum JDK Recommended JDK
jetty-10.0.x Maven 3.8.6+ OpenJDK 11 OpenJDK 17 (for optional loom and http/3 support)
jetty-11.0.x Maven 3.8.6+ OpenJDK 11 OpenJDK 17 (for optional loom and http/3 support)
jetty-12.0.x Maven 3.8.6+ OpenJDK 17 OpenJDK 17

Full Build with All Tests:

mvn clean install

Fast Build if you need jars and distribution (not running tests, checkstyle, enforcer, license check):

mvn -Pfast clean install

Optional build tools:

  • graphviz - used by asciidoctor in the jetty-documentation build to produce various graphs
  • Docker - used to run some integration tests for testing third party integrations

Once the build is complete, you can find the built Jetty Maven artifacts in your Maven local repository. Along with the following locations of note:

Branches Location Description
all jetty-home/target/jetty-home-<ver>.tar.gz The Jetty Home standalone tarball
jetty-10.0.x jetty-runner/target/jetty-runner-<ver>.jar The Jetty Runner uber jar
jetty-11.0.x jetty-runner/target/jetty-runner-<ver>.jar The Jetty Runner uber jar
jetty-12.0.x jetty-ee10/jetty-ee10-runner/target/jetty-ee10-runner-<ver>.jar The Jetty Runner uber jar for ee10/Servlet 6 (jakarta.servlet) webapps
jetty-12.0.x jetty-ee9/jetty-ee9-runner/target/jetty-ee9-runner-<ver>.jar The Jetty Runner uber jar for ee9/Servlet 5 (jakarta.servlet) webapps
jetty-12.0.x jetty-ee8/jetty-ee8-runner/target/jetty-ee8-runner-<ver>.jar The Jetty Runner uber jar for ee8/Servlet 4 (javax.servlet) webapps

Note: The build tests do a lot of stress testing, and on some machines it is necessary to set the file descriptor limit to greater than 2048 for the tests to all pass successfully (check your ulimit -n value).

Professional Services

Expert advice and production support are available through Webtide.com.