Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Go to file
Joakim Erdfelt 8de55150fe
Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136)
* Cherry-pick of Improvements to PathSpec.
* From commit: 5b4d1dd1c6
* Fixing ConstraintSecurityHandler usage of PathMappings
* Fixing bad INCLUDE logic from cherry-pick in ServletHandler.doScope()
* Cleanup of non ServletPathSpec behaviors in ServletPathMapping class
* Skip optional group name/info lookup if regex fails.
* Prevent NPE on static servletPathMappings
* Update WebSocketMappings to use new PathMappings.getMatched(String)

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-08 12:36:30 -05:00
.github More restrictions on dependencies (#8127) 2022-06-07 09:33:33 +10:00
.mvn Enable errorprone and spotbugs for java 17 (#7604) 2022-02-17 10:12:01 +10:00
apache-jsp Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
apache-jstl Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
build-resources Bump maven-javadoc-plugin from 3.3.2 to 3.4.0 (#7902) 2022-04-21 08:43:15 -05:00
demos Bump maven-bundle-plugin from 5.1.4 to 5.1.5 (#7933) 2022-05-06 16:24:40 -05:00
documentation Fixing upper bounds issue 2022-05-31 14:18:04 -05:00
javadoc exclude log4j-core to avoid problem with m-enforcer-p see https://issues.apache.org/jira/browse/LOG4J2-3241 (#8094) 2022-06-02 18:24:28 +10:00
jetty-alpn Bump maven-bundle-plugin from 5.1.4 to 5.1.5 (#7933) 2022-05-06 16:24:40 -05:00
jetty-annotations Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-ant Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-bom Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-cdi Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-client Fixes #7994 - Ability to construct a detached client Request (#8103) 2022-06-03 09:27:10 +02:00
jetty-deploy Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-fcgi Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-gcloud Bump google-cloud-datastore from 2.6.0 to 2.7.0 2022-06-03 10:06:41 +00:00
jetty-hazelcast Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-home Fix #7754 - Allow JETTY_SYS_PROPS to be configured by /etc/default/ (#7819) 2022-05-26 09:18:10 -05:00
jetty-http Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136) 2022-06-08 12:36:30 -05:00
jetty-http-spi Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-http2 Implement #8057 103 Early Hint (#8058) 2022-06-01 11:56:54 +10:00
jetty-http3 Implement #8057 103 Early Hint (#8058) 2022-06-01 11:56:54 +10:00
jetty-infinispan exclude log4j-core to avoid problem with m-enforcer-p see https://issues.apache.org/jira/browse/LOG4J2-3241 (#8094) 2022-06-02 18:24:28 +10:00
jetty-io Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-jaas Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-jaspi Bump maven-bundle-plugin from 5.1.4 to 5.1.5 (#7933) 2022-05-06 16:24:40 -05:00
jetty-jmx Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-jndi Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-jspc-maven-plugin Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-keystore Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-maven-plugin jetty 10.0.x no port 8080 (#8049) 2022-05-26 10:30:01 +10:00
jetty-memcached Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-nosql Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-openid Bump maven-bundle-plugin from 5.1.4 to 5.1.5 (#7933) 2022-05-06 16:24:40 -05:00
jetty-osgi Bump org.apache.aries.spifly.dynamic.bundle from 1.3.4 to 1.3.5 (#7877) 2022-05-05 15:21:25 -05:00
jetty-p2 make jetty-p2 depending jetty-home so we sure it's build last even when using -Tx option (#8026) 2022-05-20 21:55:59 +10:00
jetty-plus Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-proxy Fixes #8014 - Review HttpRequest URI construction. (#8015) 2022-05-26 18:13:17 +10:00
jetty-quic Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-quickstart Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-rewrite Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-runner Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-security Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136) 2022-06-08 12:36:30 -05:00
jetty-server Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136) 2022-06-08 12:36:30 -05:00
jetty-servlet Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136) 2022-06-08 12:36:30 -05:00
jetty-servlets Fix #8067 Use nanotime for DosFilter rate tracker (#8082) (#8112) 2022-06-07 10:21:23 +10:00
jetty-slf4j-impl Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-start Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-unixdomain-server Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-unixsocket Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-util Bump maven-scm-provider-jgit from 1.12.2 to 1.13.0 2022-05-30 09:28:04 +00:00
jetty-util-ajax Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-webapp Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10:00
jetty-websocket Cherry-pick of Improvements to PathSpec for Jetty 10.0.x (#8136) 2022-06-08 12:36:30 -05:00
jetty-xml Set version to `10.0.10-SNAPSHOT` (#7823) 2022-04-03 20:33:44 +10: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 Jetty 10.0.x 7801 duplicate set session cookie (#7808) 2022-06-08 10:15:24 +10: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 Bumped timeout to 3 hrs. 2022-03-24 14:02:39 +01: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 Simple Example in README (#6727) 2021-09-09 11:32:16 +10:00
SECURITY.md Update security handling bugzilla to gitlab (#8104) 2022-06-03 06:08:02 -05:00
VERSION.txt Merge Release 10.0.9 (#7821) 2022-04-02 08:43:44 -05:00
header-template.txt Issue #5784 - Cleaning up source header template 2020-12-10 15:46:28 -06:00
pom.xml Bump biz.aQute.bndlib from 6.3.0 to 6.3.1 (#8142) 2022-06-08 08:06:15 -05: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

To build, use:

  mvn clean install

Eclipse Jetty will be built in jetty-home/target/jetty-home.

The first build may take a longer than expected as Maven downloads all the dependencies.

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.

It is possible to bypass tests by building with mvn clean install -DskipTests.

Professional Services

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