Eclipse Jetty® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servlets, and more
Go to file
Padraic Renaghan 96945c7e10
Issue #6752 DefaultSessionCache more extensible using ConcurrentMap (#6753)
DefaultSessionCache is designed to be extended, by virtue of its protected session map. Subclasses can set their own map instance instead. However the session map is specified as ConcurrentHashMap, when it only needs to be ConcurrentMap.
Changed data type to ConcurrentMap to allow for wider options for subclasses, such as those wanted to use Caffeine's asMap() method which returns ConcurrentMap.
Although changing to even more relaxed Map would work, that does not provide as much clarity that the map will be used concurrently - therefore used ConcurrentMap instead.

Signed-off-by: Padraic Renaghan <padraic@renaghan.com>
2021-09-10 10:08:42 +10:00
.github Simplified release ticklist. (#6700) 2021-09-08 09:31:08 +02:00
advisories Adding reference to patched versions of jetty-http jars 2015-02-25 16:10:06 -07:00
apache-jsp Issue #6586 - remove unnecessary dependencies (#6599) 2021-08-17 16:58:35 +10:00
apache-jstl Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
build-resources Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
demos Fixes #6646 - Propagate callback invocation type to avoid deadlock in SmallThreadPoolLoadTest 2021-08-26 09:28:33 +10:00
documentation Issue #6406 - backport jetty-jaspi changes to 10.0.x 2021-08-27 11:30:16 +10:00
javadoc Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-alpn Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-annotations Remove unused imports 2021-07-27 08:03:00 -05:00
jetty-ant Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-bom Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-cdi Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-client Fixes #6603 - HTTP/2 max local stream count exceeded (#6639) (#6682) 2021-09-01 10:27:40 +02:00
jetty-deploy Issue #5684 - Windows test overhaul (#6581) 2021-08-26 11:26:46 -05:00
jetty-fcgi Fixes #6693 - FastCGI review (#6694) 2021-09-07 09:57:31 +02:00
jetty-gcloud Bump google-cloud-datastore from 1.105.0 to 2.1.0 (#6762) 2021-09-10 08:49:26 +10:00
jetty-hazelcast follow up of hazelcast upgrade with .mod files as well (#6736) 2021-09-09 14:05:08 +10:00
jetty-home Bump slf4j to 2.0.0-alpha5 (#6684) 2021-08-31 09:53:15 -05:00
jetty-http Merge pull request #6657 from eclipse/jetty-10.0.x-6642-WebSocketConnectionHeaders 2021-08-31 14:25:47 +10:00
jetty-http-spi Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-http2 Fixes #6603 - HTTP/2 max local stream count exceeded (#6639) (#6682) 2021-09-01 10:27:40 +02:00
jetty-infinispan Issue #6373 testing modules, starting with session storage (#6529) 2021-08-06 12:07:09 +10:00
jetty-io Fixes #6603 - HTTP/2 max local stream count exceeded (#6639) (#6682) 2021-09-01 10:27:40 +02:00
jetty-jaas Remove unused imports 2021-07-27 08:03:00 -05:00
jetty-jaspi Issue #6406 - backport jetty-jaspi changes to 10.0.x 2021-08-27 11:30:16 +10:00
jetty-jmx Bump openpojo from 0.8.13 to 0.9.1 (#6714) 2021-09-10 06:08:28 +10:00
jetty-jndi Issue #6586 - remove unnecessary dependencies (#6599) 2021-08-17 16:58:35 +10:00
jetty-jspc-maven-plugin Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-keystore Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-maven-plugin Bump maven-artifact-transfer from 0.12.0 to 0.13.1 (#6724) 2021-09-09 10:21:26 +10:00
jetty-memcached Bump xmemcached from 2.4.6 to 2.4.7 (#6710) 2021-09-08 20:21:11 +10:00
jetty-nosql Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-openid Merge pull request #6621 from eclipse/jetty-10.0.x-6617-openidBasicAuth 2021-08-19 16:19:15 +10:00
jetty-osgi Remove unused imports 2021-07-27 08:03:00 -05:00
jetty-plus Remove unused imports 2021-07-27 08:03:00 -05:00
jetty-proxy Issue #5684 - Windows test overhaul (#6581) 2021-08-26 11:26:46 -05:00
jetty-quickstart Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-rewrite Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
jetty-runner Remove unused imports 2021-07-27 08:03:00 -05:00
jetty-security Merge pull request #6649 from eclipse/jetty-10.0.x-jetty-jaspi 2021-08-27 13:20:51 +10:00
jetty-server Issue #6752 DefaultSessionCache more extensible using ConcurrentMap (#6753) 2021-09-10 10:08:42 +10:00
jetty-servlet Issue #6544 - Remove braces 2021-07-30 07:32:19 -05:00
jetty-servlets Issue #5684 - Windows test overhaul (#6581) 2021-08-26 11:26:46 -05:00
jetty-slf4j-impl Issue #5684 - Windows test overhaul (#6581) 2021-08-26 11:26:46 -05:00
jetty-start Issue #5684 - Windows test overhaul (#6581) 2021-08-26 11:26:46 -05:00
jetty-unixdomain-server Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522) 2021-08-05 10:04:37 +02:00
jetty-unixsocket Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522) 2021-08-05 10:04:37 +02:00
jetty-util Fixes #6603 - HTTP/2 max local stream count exceeded (#6639) (#6682) 2021-09-01 10:27:40 +02:00
jetty-util-ajax Fixes #6558 - Allow configuring return type in JSON array parsing. 2021-08-04 10:35:24 +02:00
jetty-webapp Merge pull request #6649 from eclipse/jetty-10.0.x-jetty-jaspi 2021-08-27 13:20:51 +10:00
jetty-websocket Issue #6696 - change method name to WebSocketNegotiation.upgrade() 2021-09-07 10:19:51 +10:00
jetty-xml Updating to version 10.0.7-SNAPSHOT 2021-06-29 10:51:22 -05:00
logos Issue #4572 - Mechanical Change to use org.slf4j 2020-03-16 15:48:25 -05:00
scripts releasing 10 need dot now 2021-03-25 06:22:04 +00:00
tests Bump org.apache.felix.framework from 6.0.3 to 7.0.1 (#6707) 2021-09-09 17:41:52 +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 Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522) 2021-08-05 10:04:37 +02:00
Jenkinsfile-autobahn Fixes #6043 - Reimplement UnixSocket support based on Java 16. (#6522) 2021-08-05 10:04:37 +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 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
VERSION.txt Update VERSION.txt with CVE-2021-34429. 2021-07-29 15:07:43 +10:00
header-template.txt Issue #5784 - Cleaning up source header template 2020-12-10 15:46:28 -06:00
pom.xml Bump maven.version from 3.6.3 to 3.8.2 (#6760) 2021-09-10 08:48:19 +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

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.