Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Go to file
Greg Wilkins 7f2859ab49
Issue #11014 - Improve Relative Redirect Handling in Jetty 10/11 (#11018)
* Improve relative redirect handling #11014
* Common relative redirect method.
* Use the relative redirect method from redirection rules.

Signed-off-by: gregw <gregw@webtide.com>
2023-12-07 07:12:00 +11:00
.github do not random actions to setup Maven but just use mvnw (#11020) 2023-12-04 18:45:37 +10:00
.mvn Enable errorprone and spotbugs for java 17 (#7604) 2022-02-17 10:12:01 +10:00
apache-jsp Use String#isEmpty() 2023-11-28 17:46:42 -05:00
apache-jstl Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
build-resources Bump maven.surefire.plugin.version from 3.2.1 to 3.2.2 2023-12-01 01:03:50 +00:00
demos Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
documentation Improved Conscrypt documentation for the programming guide. 2023-11-08 13:04:04 +01:00
javadoc Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-alpn Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-annotations Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-ant Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-bom Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-cdi Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-client Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-deploy Fixes #10812 - Correct awaitility dependency scope (#10813) 2023-10-31 17:48:56 +10:00
jetty-fcgi Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-gcloud Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-hazelcast Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-home Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-http Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-http-spi Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-http2 Fixed locking. 2023-11-28 15:57:19 +01:00
jetty-http3 #9900 backport Accurate implementation of H3 Request.beginNanoTime() 2023-11-27 15:31:25 +01:00
jetty-infinispan Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-io Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-jaas Bump apacheds.version from 2.0.0.AM26 to 2.0.0.AM27 (#10836) 2023-11-05 21:48:29 +01:00
jetty-jaspi Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-jmx Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-jndi Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-jspc-maven-plugin Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-keystore Bump bouncycastle.version from 1.76 to 1.77 2023-12-01 00:58:08 +00:00
jetty-maven-plugin Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-memcached Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-nosql Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-openid Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-osgi Bump org.apache.aries.spifly:org.apache.aries.spifly.dynamic.bundle 2023-12-01 01:04:50 +00:00
jetty-p2 Bump org.eclipse.tycho:tycho-p2-repository-plugin from 4.0.3 to 4.0.4 2023-12-01 00:57:15 +00:00
jetty-plus Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-proxy Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-quic Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-quickstart Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-rewrite Issue #11014 - Improve Relative Redirect Handling in Jetty 10/11 (#11018) 2023-12-07 07:12:00 +11:00
jetty-runner Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-security Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-server Issue #11014 - Improve Relative Redirect Handling in Jetty 10/11 (#11018) 2023-12-07 07:12:00 +11:00
jetty-servlet Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-servlets Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-slf4j-impl Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-start Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-unixdomain-server Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-unixsocket Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-util Use String#isEmpty() 2023-11-28 17:46:42 -05:00
jetty-util-ajax Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-webapp Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-websocket Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
jetty-xml Use String#isEmpty() 2023-11-28 17:46:42 -05:00
logos Issue #4572 - Mechanical Change to use org.slf4j 2020-03-16 15:48:25 -05:00
scripts Fixing release-jetty.sh script 2023-08-25 14:00:56 -05:00
tests Use String#isEmpty() 2023-11-28 17:46:42 -05: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
CODE_OF_CONDUCT.md Fixes #10107 (#10109) 2023-07-14 13:43:40 -05:00
CONTRIBUTING.md Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098) 2023-07-14 12:38:45 -05:00
Jenkinsfile Issue #10606 - Bump build to JDK 21 (#10607) 2023-09-28 16:19:36 -05:00
Jenkinsfile-autobahn Update Jenkinsfile-autobahn to not use not anymore available container (#10001) 2023-08-15 07:11:26 +02:00
Jmh_Jenkinsfile Merge branch 'jetty-9.4.x' into jetty-10.0.x 2019-07-09 12:57:26 +10:00
KEYS.txt Updated GPG key 2023-10-10 17:03:50 +02:00
LICENSE Issue #5784 - Fixing LICENSE file 2020-12-10 15:45:35 -06:00
NOTICE.txt Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098) 2023-07-14 12:38:45 -05:00
README.md Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098) 2023-07-14 12:38:45 -05:00
SECURITY.md Updating various old/moved URL references found across project (`jetty-10.0.x`) (#10098) 2023-07-14 12:38:45 -05:00
VERSION.txt Updating to version 10.0.19-SNAPSHOT 2023-10-26 21:10:08 -05:00
header-template.txt Happy no year 2023-02-15 15:22:32 +11:00
pom.xml Merge remote-tracking branch 'origin/dependabot/maven/jetty-10.0.x/org.wildfly.common-wildfly-common-1.7.0.Final' into fix/10.0.x/dependency-rollup-dec-2023 2023-12-01 13:18:07 -06: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.