Commit Graph

665 Commits

Author SHA1 Message Date
Joakim Erdfelt 33fe55c339 Issue #3708 - use StringUtil alternatives for known slow JVM impls.
+ StringUtil.replace()
+ StringUtil.replaceFirst()
+ StringUtil.sanitizeFileSystemPath()

Change existing usages of String.replace() to either
use new StringUtil.replace() or other methods elsewhere
that better suit that specific need.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-06-11 11:25:50 -05:00
Lachlan Roberts 3190672ffc fix bad merge of MultiPartServletTest
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-06 09:17:13 +10:00
Lachlan Roberts ab8f37e12b Merge remote-tracking branch 'eclipse/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-06 07:58:24 +10:00
Lachlan Roberts e75ca325fd Issue #3683 - close part if failure occurs in MultiPartFormInputStream
parameterize MultiPartServletTest over compliance modes

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-04 12:03:24 +10:00
Lachlan Roberts 17b8eb8401 Issue #3683 - ensure multipart files are still cleaned up after errors
- do not parse MultiParts in constructor so the attribute can be set
- deleteParts in MultiPartFormInputStream from _parts MultiMap
- only add the MultiPartCleanerListener once per context

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-04 11:19:42 +10:00
Lachlan Roberts 970b030c4a Issue #3683 - test multipart tmp files are deleted if error occurs
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2019-06-04 11:09:55 +10:00
Joakim Erdfelt 52bb963186 Merge branch `jetty-9.4.x` into `jetty-10.0.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	aggregates/jetty-all-compact3/pom.xml
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java
#	jetty-deploy/src/test/java/org/eclipse/jetty/deploy/bindings/GlobalWebappConfigBindingTest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java
#	jetty-http/src/test/java/org/eclipse/jetty/http/HttpParserTest.java
#	jetty-http2/http2-alpn-tests/pom.xml
#	jetty-http2/http2-http-client-transport/pom.xml
#	jetty-infinispan/infinispan-remote-query/src/test/java/org/eclipse/jetty/server/session/infinispan/RemoteQueryManagerTest.java
#	jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java
#	jetty-server/src/test/java/org/eclipse/jetty/server/HttpConnectionTest.java
#	jetty-server/src/test/java/org/eclipse/jetty/server/ProxyConnectionTest.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/AsyncContextTest.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/ErrorPageTest.java
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/CrossOriginFilterTest.java
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipDefaultTest.java
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/GzipTester.java
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/HeaderFilterTest.java
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/PutFilterTest.java
#	jetty-util/src/test/java/org/eclipse/jetty/util/BufferUtilTest.java
#	jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceCollectionTest.java
#	jetty-websocket/javax-websocket-client-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/DecoderReaderManySmallTest.java
#	jetty-websocket/javax-websocket-server-impl/src/test/java/org/eclipse/jetty/websocket/jsr356/server/DelayedStartClientOnServerTest.java
#	jetty-websocket/javax-websocket-tests/src/test/java/org/eclipse/jetty/websocket/javax/tests/client/DelayedStartClientTest.java
#	jetty-websocket/javax-websocket-tests/src/test/java/org/eclipse/jetty/websocket/javax/tests/server/AltFilterTest.java
#	jetty-websocket/jetty-websocket-client/src/test/java/org/eclipse/jetty/websocket/client/HttpClientInitTest.java
#	jetty-websocket/jetty-websocket-tests/src/test/java/org/eclipse/jetty/websocket/tests/client/ClientCloseTest.java
#	jetty-websocket/websocket-common/src/main/java/org/eclipse/jetty/websocket/common/io/AbstractWebSocketConnection.java
#	jetty-websocket/websocket-common/src/test/java/org/eclipse/jetty/websocket/common/extensions/compress/ByteAccumulatorTest.java
#	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WSServer.java
#	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/WebSocketServerFactoryTest.java
#	jetty-xml/src/test/java/org/eclipse/jetty/xml/XmlConfigurationTest.java
#	pom.xml
#	tests/jetty-http-tools/src/main/java/org/eclipse/jetty/http/tools/matchers/HttpFieldsMatchers.java
#	tests/test-http-client-transport/pom.xml
#	tests/test-http-client-transport/src/test/java/org/eclipse/jetty/http/client/ServerTimeoutsTest.java
#	tests/test-integration/src/test/java/org/eclipse/jetty/test/support/rawhttp/HttpResponseTesterTest.java
2019-05-01 15:02:31 -05:00
Joakim Erdfelt 41ab9baf8c Standardizing on hamcrest Matchers (not CoreMatchers from junit4)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-30 14:39:57 -05:00
Joakim Erdfelt c2e81f5584 Merge branch `jetty-9.4.x` into `jetty-10.0.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-infinispan/infinispan-common/src/main/java/org/eclipse/jetty/session/infinispan/WebAppMarshaller.java
#	jetty-infinispan/pom.xml
#	jetty-server/src/main/java/org/eclipse/jetty/server/MultiParts.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
2019-04-18 08:24:10 -05:00
olivier lamy 36398051de fix header
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-04-18 09:37:50 +10:00
Joakim Erdfelt 2995029c98 Merge branch `jetty-9.3.x` into `jetty-9.4.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java
#	jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
#	pom.xml
2019-04-17 17:10:53 -05:00
Joakim Erdfelt 3ab1ea3181 Merge branch `jetty-9.2.x` into `jetty-9.3.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientTest.java
#	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientURITest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/AbstractHttpClientServerTest.java
#	jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java
#	jetty-proxy/src/test/java/org/eclipse/jetty/proxy/ConnectHandlerTest.java
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/DefaultHandler.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-spdy/spdy-http-client-transport/src/test/java/org/eclipse/jetty/spdy/client/http/HttpClientTest.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
#	pom.xml
2019-04-17 16:47:15 -05:00
Joakim Erdfelt eebad0655a Issue #3555 - Updating testcase
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-16 17:23:39 -05:00
Joakim Erdfelt 04c994712c Issue #3555 - Do not reveal base resource in error response
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-15 18:20:39 -05:00
Joakim Erdfelt 3d028ab2ca Issue #3549 - Using FileName properly in Directory Listings.
+ Even though this was reported against Windows, the solution
  implemented should be sane for all OS or FileSystem combinations.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-15 18:05:48 -05:00
Joakim Erdfelt 7b774d82e8 Issue #3549 - Using FileName properly in Directory Listings.
+ Even though this was reported against Windows, the solution
  implemented should be sane for all OS or FileSystem combinations.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-15 18:01:41 -05:00
Simone Bordet 40c2e76786 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2019-04-06 13:45:54 +02:00
Joakim Erdfelt 7478c04351 Merge branch `jetty-9.3.x` into `jetty-9.4.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	Jenkinsfile
#	VERSION.txt
#	aggregates/jetty-all-compact3/pom.xml
#	aggregates/jetty-all/pom.xml
#	apache-jsp/pom.xml
#	apache-jstl/pom.xml
#	examples/async-rest/async-rest-jar/pom.xml
#	examples/async-rest/async-rest-webapp/pom.xml
#	examples/async-rest/pom.xml
#	examples/embedded/pom.xml
#	examples/pom.xml
#	jetty-alpn/jetty-alpn-client/pom.xml
#	jetty-alpn/jetty-alpn-java-client/pom.xml
#	jetty-alpn/jetty-alpn-java-server/pom.xml
#	jetty-alpn/jetty-alpn-server/pom.xml
#	jetty-alpn/pom.xml
#	jetty-annotations/pom.xml
#	jetty-ant/pom.xml
#	jetty-bom/pom.xml
#	jetty-cdi/cdi-core/pom.xml
#	jetty-cdi/cdi-full-servlet/pom.xml
#	jetty-cdi/cdi-servlet/pom.xml
#	jetty-cdi/cdi-websocket/pom.xml
#	jetty-cdi/pom.xml
#	jetty-cdi/test-cdi-webapp/pom.xml
#	jetty-client/pom.xml
#	jetty-continuation/pom.xml
#	jetty-deploy/pom.xml
#	jetty-distribution/pom.xml
#	jetty-documentation/pom.xml
#	jetty-fcgi/fcgi-client/pom.xml
#	jetty-fcgi/fcgi-server/pom.xml
#	jetty-fcgi/pom.xml
#	jetty-gcloud/jetty-gcloud-memcached-session-manager/pom.xml
#	jetty-gcloud/jetty-gcloud-session-manager/pom.xml
#	jetty-gcloud/pom.xml
#	jetty-hazelcast/pom.xml
#	jetty-http-spi/pom.xml
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpContext.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpExchangeDelegate.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java
#	jetty-http/pom.xml
#	jetty-http2/http2-alpn-tests/pom.xml
#	jetty-http2/http2-client/pom.xml
#	jetty-http2/http2-common/pom.xml
#	jetty-http2/http2-hpack/pom.xml
#	jetty-http2/http2-http-client-transport/pom.xml
#	jetty-http2/http2-server/pom.xml
#	jetty-http2/pom.xml
#	jetty-infinispan/pom.xml
#	jetty-io/pom.xml
#	jetty-jaas/pom.xml
#	jetty-jaspi/pom.xml
#	jetty-jmx/pom.xml
#	jetty-jndi/pom.xml
#	jetty-jspc-maven-plugin/pom.xml
#	jetty-maven-plugin/pom.xml
#	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java
#	jetty-monitor/pom.xml
#	jetty-nosql/pom.xml
#	jetty-osgi/jetty-osgi-alpn/pom.xml
#	jetty-osgi/jetty-osgi-boot-jsp/pom.xml
#	jetty-osgi/jetty-osgi-boot-warurl/pom.xml
#	jetty-osgi/jetty-osgi-boot/pom.xml
#	jetty-osgi/jetty-osgi-httpservice/pom.xml
#	jetty-osgi/pom.xml
#	jetty-osgi/test-jetty-osgi-context/pom.xml
#	jetty-osgi/test-jetty-osgi-fragment/pom.xml
#	jetty-osgi/test-jetty-osgi-webapp/pom.xml
#	jetty-osgi/test-jetty-osgi/pom.xml
#	jetty-plus/pom.xml
#	jetty-proxy/pom.xml
#	jetty-quickstart/pom.xml
#	jetty-rewrite/pom.xml
#	jetty-runner/pom.xml
#	jetty-security/pom.xml
#	jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java
#	jetty-server/pom.xml
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
#	jetty-servlet/pom.xml
#	jetty-servlet/src/main/java/org/eclipse/jetty/servlet/DefaultServlet.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-servlets/pom.xml
#	jetty-servlets/src/test/java/org/eclipse/jetty/servlets/ThreadStarvationTest.java
#	jetty-spring/pom.xml
#	jetty-start/pom.xml
#	jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java
#	jetty-util-ajax/pom.xml
#	jetty-util/pom.xml
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
#	jetty-webapp/pom.xml
#	jetty-websocket/javax-websocket-client-impl/pom.xml
#	jetty-websocket/javax-websocket-server-impl/pom.xml
#	jetty-websocket/pom.xml
#	jetty-websocket/websocket-api/pom.xml
#	jetty-websocket/websocket-client/pom.xml
#	jetty-websocket/websocket-common/pom.xml
#	jetty-websocket/websocket-server/pom.xml
#	jetty-websocket/websocket-servlet/pom.xml
#	jetty-xml/pom.xml
#	pom.xml
#	tests/pom.xml
#	tests/test-continuation/pom.xml
#	tests/test-http-client-transport/pom.xml
#	tests/test-integration/pom.xml
#	tests/test-jmx/jmx-webapp-it/pom.xml
#	tests/test-jmx/jmx-webapp/pom.xml
#	tests/test-jmx/pom.xml
#	tests/test-loginservice/pom.xml
#	tests/test-quickstart/pom.xml
#	tests/test-sessions/pom.xml
#	tests/test-sessions/test-file-sessions/pom.xml
#	tests/test-sessions/test-gcloud-sessions/pom.xml
#	tests/test-sessions/test-infinispan-sessions/pom.xml
#	tests/test-sessions/test-jdbc-sessions/pom.xml
#	tests/test-sessions/test-memcached-sessions/pom.xml
#	tests/test-sessions/test-mongodb-sessions/pom.xml
#	tests/test-sessions/test-sessions-common/pom.xml
#	tests/test-webapps/pom.xml
#	tests/test-webapps/test-jaas-webapp/pom.xml
#	tests/test-webapps/test-jetty-webapp/pom.xml
#	tests/test-webapps/test-jndi-webapp/pom.xml
#	tests/test-webapps/test-mock-resources/pom.xml
#	tests/test-webapps/test-proxy-webapp/pom.xml
#	tests/test-webapps/test-servlet-spec/pom.xml
#	tests/test-webapps/test-servlet-spec/test-container-initializer/pom.xml
#	tests/test-webapps/test-servlet-spec/test-spec-webapp/pom.xml
#	tests/test-webapps/test-servlet-spec/test-web-fragment/pom.xml
#	tests/test-webapps/test-webapp-rfc2616/pom.xml
2019-04-03 17:47:18 -05:00
Joakim Erdfelt 554fc39f06 Merge branch `jetty-9.2.x` into `jetty-9.3.x`
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>

# Conflicts:
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/HttpSpiContextHandler.java
#	jetty-http-spi/src/main/java/org/eclipse/jetty/http/spi/JettyHttpServerProvider.java
#	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/JettyDeployWar.java
#	jetty-security/src/test/java/org/eclipse/jetty/security/AliasedConstraintTest.java
#	jetty-server/src/main/java/org/eclipse/jetty/server/handler/ResourceHandler.java
#	jetty-servlet/src/test/java/org/eclipse/jetty/servlet/DefaultServletTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/BaseHomeTest.java
#	jetty-start/src/test/java/org/eclipse/jetty/start/ConfigurationAssert.java
#	jetty-util/src/main/java/org/eclipse/jetty/util/resource/Resource.java
2019-04-03 17:19:34 -05:00
Joakim Erdfelt ca77bd384a Issue #3319 - Refactoring DefaultServlet Index/Listing
+ Now generates valid HTML5
+ Now allows column sort

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-04-03 16:28:26 -05:00
Simone Bordet 9c13cf3a52 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-04-02 17:37:56 +02:00
Simone Bordet c4b2621f56
Merge pull request #3480 from eclipse/jetty-9.4.x-3464-split_sslcontextfactory
Issue #3464 - Split SslContextFactory into Client and Server
2019-04-02 12:39:37 +02:00
Jesse McConnell 475331a547
really fix test on windows 2019-03-29 08:28:47 -05:00
Jesse McConnell 64f5718da3
fix test on windows 2019-03-29 08:08:29 -05:00
Jesse McConnell 3f81b46970
fix test on windows 2019-03-29 07:57:22 -05:00
Simone Bordet 6fb243ff6c Issue #3464 - Split SslContextFactory into Client and Server
Introduced SslContextFactory subclasses Client and Server.
Replaced all usages of SslContextFactory with either Client or Server
as required.

Refactored configuration checking so that warnings are not emitted
when non necessary.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2019-03-21 14:42:42 +01:00
Greg Wilkins 0fb17bff76 Issue #3012 Compliance modes.
Updated unit tests for messages and reasons

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-13 11:47:11 +11:00
Greg Wilkins c1f6f6b608 Implementation of a request customizer to do gzip inflation
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-03-12 18:05:41 +11:00
Joakim Erdfelt e476cec6d3 Issue #1676 - Removing deprecated methods and classes
+ Changing usages of JVM deprecated classes / methods as well
+ Cleaning up test cases and javadoc
+ Removing test methods that rely on deprecated and now removed concepts

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2019-02-28 17:54:28 -05:00
Greg Wilkins 5d9c55be8f Issue #3225 sendError does not set reason.
The message string passed to sendError should only be used for the
error page content and not for the reason string.

Setting the reason in a response via setStatus(int,String) is deprecated

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2019-02-06 17:12:02 +11:00
olivier lamy 63f2023e05 happy new year!!
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-01-01 12:17:53 +10:00
Olivier Lamy 9b7afd8a03
Happy new year!! (#3232)
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2019-01-01 11:52:16 +10:00
Greg Wilkins 720e561008 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-11-29 09:32:50 +01:00
Greg Wilkins bda9307028
Merge pull request #3144 from lachlan-roberts/jetty-9.4.x
Issue #113 - CustomRequestLog
2018-11-29 09:29:43 +01:00
Lachlan Roberts 63aa9ce97d Issue #113 - problems with latency tests and request handler name
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-11-28 10:52:17 +01:00
Simone Bordet 5f972b451c
Jetty 10.0.x 2978 add module info (#3120)
Fixes #2978 - Add module-info to relevant Jetty modules.

Added module-info.java for Jetty modules that are not test modules.
Moved jetty-http test utility classes to new module "jetty-http-tools".
Removed generation of test-jar from websocket-core.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-11-22 12:37:35 +01:00
Lachlan Roberts 112d57f474 Issue #113 - CustomRequestLog
added missing copyright header in some new files

added CustomRequestLogTest in jetty-servlet to test things like
logFilename and logRequestHandler

the log strings produced do no longer contain a trailing newline

implemented more tests in CustomRequestLogTest
and finished implementing some of the logging in CustomRequestLog

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-11-22 10:32:22 +01:00
Simone Bordet aaa9a1e410 Merged branch 'jetty-9.4.x' into 'jetty-10.0.x'. 2018-11-13 18:12:16 +01:00
Jan Bartel 1845e6ea48
Issue #39078 Duplicated programmatic listeners. (#3101)
Signed-off-by: Jan Bartel <janb@webtide.com>
2018-11-13 14:29:12 +01:00
Joakim Erdfelt 0912c58cdb Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2018-11-02 11:07:39 -05:00
Greg Wilkins 3995cd2ec0
Issue #3023 redirect to / when pathInfoOnly (#3047)
Issue #3023 redirect to / when pathInfoOnly (#3047)
2018-11-02 16:38:43 +01:00
Greg Wilkins 254dc88743 Merge branch 'jetty-9.4.x' into jetty-10.0.x
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-11-01 20:24:43 +01:00
Greg Wilkins 161f1698cf
Jetty 9.4.x 3018 request logging bad messages (#3020)
Issue #3018 improve logging and handling of slow data rates.

* Slow data rates now result in aborted channels, but exception is still thrown.  Test for 408 in requestLog
* Updated many RequestLog usages to use Server.setRequestLog rather than a RequestLogHandler
* Fixed javadoc
* removed BadRequestLogHandlerTest (tested in RequestLogTest)
* added JMH to show the future of request logging for #113
* copyright header.
* Updates from review
* Revert to throwing BadMessageException
* BME ensures a 408 is logged rather than a 500

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-11-01 17:06:04 +01:00
Joakim Erdfelt 4679565fd5 Issue #3011 - Moving HttpCompliance to HttpConfiguration
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-10-22 15:38:54 -05:00
Joakim Erdfelt 57ef060325 Issue #2936 - Allow Dispatcher.error() to work for BadMessageException
+ Applying fixes from review

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-10-02 08:39:05 -05:00
Joakim Erdfelt fe66e3d0cb Issue #2936 - Allow Dispatcher.error() to work for BadMessageException
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-10-01 10:43:57 -05:00
Joakim Erdfelt b3739f42b8 Issue #2936 - Improving testcase to replicate reported scenario as described 2018-09-30 07:01:06 -05:00
Greg Wilkins c3ca4b7ee9 Issue #2936 Test bad message error page
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-09-28 15:29:32 +10:00
Olivier Lamy 71a1801433
Issue #2918 restore a TestTracker with junit5 (#2927)
* add TestTracker junit5 extension #2918

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2018-09-21 14:03:05 +10:00
Greg Wilkins a9566d429c
Issue #2912 Remove Content-Length from inflated requests (#2915)
Issue #2912 Remove Content-Length from inflated requests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-09-21 07:44:53 +10:00
Joakim Erdfelt a3f1592c50 Issue #2431 - Upgrade to Junit 5 (#2436)
+ Changes needed for new Junit 5
+ Migrating from Vintage junit API to Jupiter junit API
+ Relies on SNAPSHOT jetty-test-helper
  - this will be a formal release once this issue has been
    resolved satisfactory
+ Have jenkins always pull latest SNAPSHOT for each build
+ Adding jetty.snapshots repository
+ Using surefire 2.22.0 per advice from junit
+ Ensuring <reuseForks>true</reuseForks> to work around issue junit-team/junit5#801
+ Disabling <forkMode>always</forkMode> in maven-surefire-plugin
  due to bug https://github.com/junit-team/junit5/issues/801
+ OSGi tests must remain at vintage due to PaxExam
+ Moving from vintage TestingDir to jupiter WorkDir
+ Fixing imports to use jupiter, not vintage
+ Migrating vintage ExpectedException to jupiter assertThrows
+ Migrating vintage TestName to jupiter TestInfo
+ Migrating @RunWith(Parameterized.class)
  to @ParameterizedTest with Argument Sources
+ Migrating assertTrue(val.contains(needle))
  to assertThat(val, containsString(needle))
+ Aligning junit versions per recommendations from @sormuras
+ Adjusting parameter order change for assertEquals()
+ Test LifeCycle Annotation Migration

junit 4      | junit 5 / jupiter
------------ | -----------
@Before      | @BeforeEach
@After       | @AfterEach
@BeforeClass | @BeforeAll
@AfterClass  | @AfterAll

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2018-09-05 10:07:17 +10:00
Simone Bordet 5b5f2fcf5f Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2018-08-27 10:29:12 +02:00
Greg Wilkins bd143a674b
Issue #2787 BadMessage if bad query detected in dispatcher (#2827)
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-08-22 08:29:12 +10:00
Greg Wilkins 04cbb13ad3 Issue #2787 BadMessage if bad query detected in dispatcher
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-08-18 11:52:28 +10:00
Joakim Erdfelt 7ad182fbcf Issue #2780 - making servlet output reliable for EOL 2018-08-07 15:59:42 -05:00
Greg Wilkins cf3681ef56
Issue #1688 Encoded form content (#2733)
* Issue #1688 Encoded form content

Signed-off-by: Greg Wilkins <gregw@webtide.com>

* fixes from review

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-07-20 09:30:36 +02:00
Greg Wilkins 346879f2a5
Merge pull request #2664 from mperktold/jetty-9.4.x
Issue #2662 Unnecessary boxing conversions
2018-06-13 22:52:27 +02:00
Matthias Perktold f901efc413 Issue #2662 - Unnecessary boxing conversions
Signed-off-by: Matthias Perktold <tias251@gmail.com>
2018-06-13 16:20:12 +02:00
Simone Bordet 4f1dd352d6
Issue #2468 - Remove SoLinger. (#2644)
* Issue #2468 - Remove SoLinger.

For non-blocking sockets, StandardSocketOptions#SO_LINGER javadocs
report that the behavior is undefined. In JDK 11 setting SoLinger
for non-blocking sockets will be ignored.

As such, there is no point in allowing SoLinger to be configured
in Jetty that only uses non-blocking sockets.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2018-06-09 13:21:24 +02:00
Joakim Erdfelt 53e8bc2a63 Backport of issue #2560 fixes to jetty-9.3.x
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-05-31 12:43:17 -05:00
Joakim Erdfelt c4bcc4005a Merge branch 'jetty-9.4.x-issue-2560-pathresource-exceptions' of github.com:eclipse/jetty.project into jetty-9.4.x-issue-2560-pathresource-exceptions 2018-05-31 11:32:24 -05:00
Joakim Erdfelt ad4dceb1c0 Issue #2560 - Moving InvalidPath logic from PathResource to ResourceContentFactory
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-05-31 11:31:36 -05:00
Joakim Erdfelt c36390967f Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-issue-2560-pathresource-exceptions 2018-05-31 10:15:11 -05:00
Jan Bartel 0f23af315c Issue #2599 Fix AsyncServletIOTest
Signed-off-by: Jan Bartel <janb@webtide.com>
2018-05-30 18:15:04 +02:00
Joakim Erdfelt be61fabc63 Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-9.4.x-issue-2560-pathresource-exceptions 2018-05-29 12:09:07 -05:00
Greg Wilkins d3b81e5372 Fix for #2583
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-05-29 12:41:19 +02:00
Joakim Erdfelt 65de2c6690 Issue #2560 - Review of PathResource exception handling
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-05-22 10:30:30 -05:00
Greg Wilkins 252ab9facf
Jetty 9.4.x 2550 coalesce ranges (#2551)
Issue #2550 coalesce ranges

Author: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2018-05-18 08:45:54 +10:00
Greg Wilkins a933456089 update etags for all methods #1416
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2018-03-13 14:07:37 +11:00
Lachlan Roberts a639ee9275 Resolved errorprone MissingOverride warnings #2206
`@Override` was added to methods which were missing the annotation #2206

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2018-03-01 13:59:25 +11:00
Greg Wilkins 8b7480f088 Merge branch 'jetty-9.4.x' into jetty-9.4.x-2022-FineGrainedComplianceModes 2018-01-10 22:25:49 +01:00
Joakim Erdfelt 41ed9f29f4 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2018-01-09 09:37:25 -06:00
Joakim Erdfelt fa4c7b0ca9 Issue #2108 - Updating license headers for year 2018 2018-01-09 08:39:37 -06:00
Joakim Erdfelt 067fc5d2d8 Issue #2108 - Upgrade licenses for 2018 2018-01-09 07:42:06 -06:00
Greg Wilkins 22beb1d02a Updated tests to use _LEGACY modes
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-27 14:16:23 +01:00
Greg Wilkins 7e516e29fb pass existing compliance tests
Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-24 18:00:03 +01:00
Greg Wilkins 5ce07dddd6
#2006 Use a NOOP to allow unhandle to cope with stolen read (#2009)
#2006 Use a NOOP to allow unhandle to cope with stolen read

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2017-12-02 12:14:43 +01:00
Jan Bartel b1c80ba231
Issue #1986 ServletContextHandler.Context addListener() methods support session listeners (#2000)
* Issue #1986 Support session listeners in ServletContextHandler.addEventListener method.

Signed-off-by: Jan Bartel <janb@webtide.com>
2017-11-30 15:03:37 +01:00
Greg Wilkins d4061fcfeb
Issue #1966 Case Sensitive method (PR #1967)
Issue #1966 Case Sensitive method (PR #1967)

* Modified the compliance violations to warn if case insensitivety is applied to a header
* removed duplicated if
* Fixed string comparison
* Improved compliance messages and comments
* updated expected violation messages
* Require a header colon only when in 7230 compliance mode
2017-11-29 18:56:54 +01:00
Greg Wilkins c843b809f0 Fixed #1737 DefaultServlet wrong welcome dispatcher using non-root URL path
If operating in pathInfoOnly mode, prepend the serlvet path to the welcome path
2017-08-16 09:54:52 +10:00
Joakim Erdfelt 12e61bf973 Making tests more reliable on lesser FileSystems 2017-08-08 09:14:11 -07:00
Greg Wilkins c9a1395f08 Issue #1618 Async dispatch encoded passed URI 2017-08-08 09:13:43 -07:00
Joakim Erdfelt 61904052f4 Issue #1618 - new testcase for startAsync(req,resp).dispatch() behavior with regards to URL/URI 2017-08-08 09:13:41 -07:00
Joakim Erdfelt 8c96fdde4c Issue #1618 - updating testcase expectations for getPathInfo to match javadoc 2017-08-08 09:13:41 -07:00
Joakim Erdfelt 4556680ddb Issue #1618 - adding testcase to verify AsyncContext dispatch encoding 2017-08-08 09:13:40 -07:00
Joakim Erdfelt 11f2cc5294 Updating test to use HttpTester 2017-08-08 09:13:39 -07:00
Greg Wilkins e7ef74dd4f removed deprecated test method usage 2017-08-08 09:10:25 -07:00
Greg Wilkins 58a4d9e115 Fixes #1592 bad compressed etag comparison 2017-08-08 09:10:25 -07:00
Greg Wilkins b0edf18ad9 Issues #1538 #1435
Get base content type directly rather than through Type which maybe null
2017-05-08 15:31:00 +02:00
Greg Wilkins 3495525fe1 Isssue #1530 Do not check for broken final content, only for no last chunk 2017-05-03 20:26:02 +02:00
Greg Wilkins 5493c9e596 Refactor ServletHandler to add getMappedServlet method (#1519) 2017-05-01 16:38:55 +02:00
Greg Wilkins 5e5d650b05 Issue #1500 2017-04-26 16:02:18 +02:00
Joakim Erdfelt e5b5a3c4ee Issue #1500 - adding testcase 2017-04-24 12:42:57 -07:00
Greg Wilkins 63ff4af6b8 improved unit test 2017-04-21 15:21:04 +10:00
Greg Wilkins 02276974a8 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-04-20 13:19:28 +10:00
Greg Wilkins 2f04b0f869 Fix #1487 2017-04-20 11:38:28 +10:00
Greg Wilkins f5631a9f1b Fix #1486 2017-04-20 09:38:50 +10:00
Greg Wilkins 781c5750d9 Test for #1435 2017-03-30 11:31:53 +11:00
Joakim Erdfelt 5e57b9562f Merge branch 'jetty-9.3.x' into jetty-9.4.x 2017-02-02 16:14:10 -07:00
Joakim Erdfelt 9a8f22d5dd Testing Updates
+ Upgrading to jetty-test-helper 4.0
+ Removing use of org.eclipse.jetty.toolchain.test.SimpleRequest
+ Removing use of org.eclipse.jetty.toolchain.test.http.SimpleHttpParser
+ Removing use of org.eclipse.jetty.toolchain.test.http.SimpleHttpResponse
+ Updating long since deprecated (and now removed) known quirky methods
  in jetty-test-helper and the test classes.
2017-02-02 15:51:38 -07:00
Simone Bordet 0c8273f2ca Happy New Year 2017. 2017-01-19 19:26:41 +01:00
Simone Bordet 07838b057f Happy New Year 2017. 2017-01-19 18:54:03 +01:00
Simone Bordet 347c48d657 Revert "resolve merge and update license headers"
This reverts commit 53b31b03dd, reversing
changes made to 4565c186d7.
2017-01-19 18:26:43 +01:00
Jesse McConnell 53b31b03dd resolve merge and update license headers 2017-01-19 09:33:16 -06:00
Jesse McConnell ce3e6dafec update license headers to 2017 2017-01-19 09:30:00 -06:00
Jan Bartel 1ecaac9383 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-01-19 13:53:51 +11:00
Jan Bartel edfd05dd9c Issue #1268
Add unit tests, tweak log and error messages, fix bug.
2017-01-19 13:49:50 +11:00
Greg Wilkins 611e79945c Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2017-01-11 18:10:50 +11:00
Greg Wilkins 36dcf47f18 Issue #1234 onBadMessage
Added a boolean to determine if headerComplete has been called, and if so then earlyEOF is called
2017-01-11 17:36:04 +11:00
Greg Wilkins 6781a949b1 Issue#1066 Simplify HttpGeneration
Reduce the transformations needed on header fields, so they can be more often
set directly and no need to split and recombine.

The Content-Length field is added IF it is needed for framing or if it was explicitly set

The Transfer-Encoding: chunk field is used only as a hint that there is content.

Connection fields are used as is, but are checked for close and keep-alive
2016-11-03 16:55:33 +11:00
Jan Bartel dfdd324bc8 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-11-03 10:56:35 +11:00
Jan Bartel f3f31d163c Issue #1050
Add check for duplicate FilterHolder,ServletHolder objects
2016-11-03 10:55:02 +11:00
Jan Bartel 1a6dd7615d Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-11-02 17:33:35 +11:00
Jan Bartel 8461cc07b3 Issue #1050 2016-11-02 17:32:55 +11:00
Simone Bordet 69aa9d77ee Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-10-28 12:15:14 +02:00
Simone Bordet 206122756f Fixes #1037 - Don't execute AsyncListener.onTimeout events in spare Scheduler-Thread.
Now calling onTimeout() from pooled threads.
Restored AsyncListener test cases.
2016-10-28 12:01:39 +02:00
Jan Bartel 457c66c58d Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-10-13 15:21:17 +11:00
Jan Bartel 37ec4160bb Issue #1000 2016-10-13 15:06:47 +11:00
Greg Wilkins 98bb582d45 Jetty 9.4.x http interceptor #382
* Issue #382 Request compression

Added identity HttpInput.Interceptor
Moved GZIPContentDecoder to jetty-http
Reworking interceptor and GZIPContentDecoder to avoid data copies
Completed and tested GZIPContentDecoder
Implemented GzipHttpInputInterceptor
updated GzipHandler.java
updated gzip module
use common GZIP decoder
Gzip Bomb
handle read() after empty interception
2016-10-05 13:49:20 +11:00
Simone Bordet 716c595cdf Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-26 12:20:22 +02:00
Simone Bordet 74b86bad35 Fixes #960 - Async I/O spin when reading early EOF.
AsyncIOServletTest is now testing HTTP/1.1 and HTTP/2 transports.
2016-09-26 11:49:57 +02:00
Simone Bordet 9551d0f62b Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-22 21:57:12 +02:00
Simone Bordet 1f92ba2112 Code cleanup. 2016-09-22 21:28:09 +02:00
Simone Bordet 82aec3986e Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-09-16 10:37:45 +02:00
Olivier Lamy 1bf87b317b Add support of a query param to reset stats of StatisticsHandler tru StatisticsServlet (#919)
StatisticsServlet: support a new parameter to be able to reset stats

Signed-off-by: olivier lamy <olamy@webtide.com>
2016-09-16 10:36:33 +02:00
Greg Wilkins ea08a6db72 Issue #911
Fix spec compliance, return HttpServletRequest.getContextPath as encoded.
2016-09-14 18:28:02 +10:00
Greg Wilkins b6a39cf7d3 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-09-09 10:13:38 +10:00
Greg Wilkins 68340a94d0 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 10:12:08 +10:00
Greg Wilkins b408786b9a Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 09:20:24 +10:00
Greg Wilkins 4312995d89 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 09:19:01 +10:00
Greg Wilkins ebec811427 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-09-09 09:10:48 +10:00
Greg Wilkins 1247380976 Issue #911 encode requestURI in startAsync(req,res) 2016-09-09 09:09:51 +10:00
Greg Wilkins a6512c991b Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-09-08 15:03:10 +10:00
Greg Wilkins f7d017ca1a Issue #911 encode requestURI in startAsync(req,res) 2016-09-08 15:00:54 +10:00
Greg Wilkins 25574d2843 Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-09-02 14:57:44 +10:00
Greg Wilkins 1f7c5a5b20 Issue #898
Added addCSV method to HttpFields to more efficiently add values to a CSV field without duplicates.
Improved usage of QuotedCSV and removed older parsing

Used new method in GazipHttpOutPutInterceptor to avoid duplicate Vary fields
2016-09-02 14:57:13 +10:00
Greg Wilkins a415e72e2d Fixed Debug NPE #754
Fixed the fix
2016-07-28 18:29:21 +10:00
Joakim Erdfelt 87c8e1c019 Merge branch 'jetty-9.3.x' into jetty-9.4.x 2016-07-25 17:02:51 -07:00
Greg Wilkins e53ea55f48 Issue #752 SETTINGS_MAX_HEADER_LIST_SIZE
Defined missing status codes (removed old/wrong javadoc)
Changed use of 413 to 431
Received SETTINGS_MAX_HEADER_LIST_SIZE is set on hpack encoded and warning generated only for large responses.
2016-07-23 12:17:50 +10:00
Greg Wilkins 86ff9f984d fixed noisy/broken tests 2016-07-19 15:16:14 +10:00
Simone Bordet 6adb5eb031 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-15 18:12:02 +02:00
Simone Bordet 0433a8ca73 Issue #730 - "Slow" client causes IllegalStateException.
Fixed by allowing state ASYNC to call onWritePossible().
2016-07-15 18:11:28 +02:00
Simone Bordet a38e819907 Code cleanups. 2016-07-15 18:09:44 +02:00
Joakim Erdfelt 165a7082ba Merge branch 'jetty-9.3.x' into jetty-9.4.x 2016-07-13 12:29:43 -07:00
Joakim Erdfelt 241ef90769 Issue #721 - Enhancing multi-line response header testcase 2016-07-13 12:29:02 -07:00
Simone Bordet 2954ef0fd8 Merge branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-07-13 20:10:08 +02:00
Joakim Erdfelt e4249fdd9b Issue #721 - Adding testcase for multi-line response values 2016-07-13 09:33:30 -07:00
Joakim Erdfelt b28064c2c8 Using LocalConnector in test 2016-07-13 09:20:34 -07:00
Greg Wilkins c60cca7b8c clean up import 2016-07-13 11:59:02 +10:00
Joakim Erdfelt 232a077b9d Merge branch 'jetty-9.3.x' into jetty-9.4.x 2016-07-12 17:50:16 -07:00
Joakim Erdfelt 30f8f32594 Issue #717 - Adding Transfer-Encoding: chunked testcase 2016-07-12 17:47:53 -07:00
Joakim Erdfelt d08d5b949c Issue #717 - Adding testcase for GzipHandler.minGzipSize 2016-07-12 12:04:49 -07:00
Jan Bartel 5b5c8c3791 Issue #282 2016-07-08 13:23:00 +10:00
Greg Wilkins e38ec83de9 Issue #695 use the getResponse methods 2016-07-07 18:13:44 +10:00
Joakim Erdfelt 8157a4533c Merge branch 'jetty-9.3.x' into jetty-9.4.x 2016-06-22 10:43:43 -07:00
Joakim Erdfelt cb03ffd9a2 Merge branch 'jetty-9.2.x' into jetty-9.3.x 2016-06-22 08:51:24 -07:00
Joakim Erdfelt 2731ac1752 Issue #654: Confirming ServletContext.getResourceAsStream() behavior in Jetty 9.2.x 2016-06-22 08:50:25 -07:00
Greg Wilkins 3a9dfd913a Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-06-08 16:24:09 +10:00
Greg Wilkins f4c13e5f54 Issue #623 Add gzip suffix to etags in 304 response 2016-06-08 14:33:49 +10:00
Greg Wilkins 24ac1b7edd removed fragile test 2016-05-20 12:10:06 +10:00
Greg Wilkins 595e44a3f2 removed fragile test 2016-05-20 12:08:23 +10:00
Greg Wilkins 79e5c31029 improved unit test, fixed deferred on chunking 2016-05-19 17:46:50 +10:00
Greg Wilkins 74110d445e fixed bad unit test 2016-05-19 17:39:19 +10:00
Greg Wilkins 49ec41f600 Issue #525 fix blockForContent spin
Improved test
2016-05-18 12:54:27 +10:00
Greg Wilkins 7c6786a050 Issue #525
fixed bad merge
2016-05-12 13:42:46 +10:00
Greg Wilkins 6fb095f02c Merge remote-tracking branch 'origin/jetty-9.3.x' into jetty-9.4.x 2016-05-11 16:23:06 +10:00
Greg Wilkins d8715ad217 improved test 2016-05-10 11:43:34 +10:00
Simone Bordet 9a5d8f3943 Merged branch 'jetty-9.3.x' into 'jetty-9.4.x'. 2016-05-06 17:43:49 +02:00
Greg Wilkins 2a5b120fc3 Issue #525 fix blockForContent spin
abort request in bad request handling
2016-05-06 20:31:55 +10:00
Greg Wilkins 9dbd944850 Issue #525 Looping on malformed request
Fixed unit test for 9.4 error handling
2016-04-29 15:05:19 +10:00
Greg Wilkins 092ed57a17 Merge remote-tracking branch 'origin/jetty-9.3.x' 2016-04-28 08:17:45 +10:00
Greg Wilkins 695b63fc78 Issue #525 Looping on malformed request
Improved onBadMessage handling so that it better handles ISE thrown when a bad message is detected while dispatched to the servlet.
2016-04-27 18:57:15 +10:00
Joakim Erdfelt 44fa2b0de1 Issue #525 - Possible 100% CPU Consumption in HttpInputOverHttp.blockForContent with malformed HTTP-Request
+ Adding testcase to attempt to replicate
  (Does not cause spin loop, so set to @Ignore for now)
2016-04-26 14:31:08 -07:00
Joakim Erdfelt f1c34cb10f Close #526 - Headers set from RequestDispatcher.include() not showing up in response
+ Adding 2 testcases to verify behavior
2016-04-26 14:04:56 -07:00
Mikko Tiihonen aa8597c19e Sort equal quality accept-encoding values based on server configured preference (#507)
* Sort equal quality accept-encoding values based on server configured preference. Add fixed size cache to reduce overhead of complex header parsing. #507 

Signed-off-by: Mikko Tiihonen <mikko.tiihonen@nitorcreations.com>

* Only look at the first Accept-Encoding header value in the request. Jetty has never supported handling of multiple headers before and the worst thing that can happen is that the static content is sent uncompressed

* Rename tieBreakerFunction to secondaryOrderingFunction

* Make accept-encoding header cache size configurable

* Add back multiple accept-encoding header handling (with optimizations). Merge QuotedEncodingQualityCSV back to QuotedQualityCSV. Fix documentation on how to use precompressed servlet init parameter
2016-04-15 20:04:01 +10:00
Mikko Tiihonen 3261e03edb Support for configurable set of precompressed static resources
* Support for configurable set of precompressed static resources

Signed-off-by: Mikko Tiihonen <mikko.tiihonen@nitorcreations.com>

* Use QuotedQualityCSV to parse preferred content encodings

Signed-off-by: Mikko Tiihonen <mikko.tiihonen@nitorcreations.com>
2016-04-07 13:57:00 +10:00
Greg Wilkins acfa1268bc Merge remote-tracking branch 'origin/jetty-9.3.x' 2016-03-24 12:58:06 +11:00
Greg Wilkins 4ae077f2b6 Issue #448 - RFC2616 Compliance Mode should track and report RFC7230 violations
Improved compliance level reporting
Improved method names to make code read better
2016-03-23 14:42:05 +11:00
Greg Wilkins 7f96db72c4 Issue #448 - RFC2616 Compliance Mode should track and report RFC7230 violations
Empty value is not a compliance issue
removed debug
moved violation handling to end of header rather than end of message
2016-03-23 13:13:16 +11:00
Joakim Erdfelt 7be58f9730 Issue #448 - RFC2616 Compliance Mode should track and report RFC7230 violations
+ added Optional behavior to record violations in a Request attribute
+ added servlet testcase showing this violation recording abillity
+ currently the recorded violation doesn't report the correct compliance mode that it violates
+ there is still a problem with a quoted empty string value from Issue #451
2016-03-22 12:20:19 -07:00
Joakim Erdfelt 3624339ec6 Merge branch 'jetty-9.3.x' 2016-03-16 10:29:29 -07:00
Greg Wilkins 1c5a1fc6a2 Issue #431
Suppress stack traces from unit tests
2016-03-16 18:19:40 +11:00
Greg Wilkins 2b67e04861 fixed bad merge 2016-03-02 17:32:17 +01:00
Greg Wilkins 3300d54b5a Merge remote-tracking branch 'origin/jetty-9.3.x' 2016-03-02 14:13:29 +01:00
Greg Wilkins 3963309f62 Issue #379 Insufficient information on asyncNotSupported
Converted the boolean for asyncSupported to a String holding the source
of the async not supported.
2016-03-02 14:09:15 +01:00
Greg Wilkins dd4a72ce76 479903 - improve async onError handling
Work in progress towards clean build
2016-02-17 14:13:21 +01:00
Simone Bordet cb79379b79 Merged branch 'jetty-9.3.x' into 'master'. 2016-02-05 18:14:56 +01:00
Jan Bartel dd2e042ddf Revert "486394 - Restore MultiPartFilter behavior with regards to temp file access"
This reverts commit 009fde2400.
2016-02-04 08:41:14 +01:00
Jan Bartel 94a56f0802 Revert "Fixing license header formatting on new file"
This reverts commit c858bc126a.
2016-02-04 08:41:00 +01:00
Greg Wilkins bb89e113a9 fixed merge 2016-02-04 07:00:39 +01:00
Greg Wilkins df79ad689a Merge remote-tracking branch 'origin/jetty-9.3.x' 2016-02-04 07:00:13 +01:00
Joakim Erdfelt c858bc126a Fixing license header formatting on new file 2016-02-03 08:31:08 -07:00
Joakim Erdfelt 009fde2400 486394 - Restore MultiPartFilter behavior with regards to temp file access
+ Adding HttpServletRequest.getParts() demonstration of duplicate name="" entries
+ Adding 2 new testcases in MultipartFilterTest demonstrating
  location/temp file access issue (currently @Ignored)
2016-02-03 08:19:37 -07:00
Greg Wilkins 6c9a444b6c 486530 - Handler added to WebAppContext prevents ServletContext initialization
Added warnings for loops and inappropriate handlers.
Used insertHandler in more XML files
2016-02-03 10:54:39 +01:00
Joakim Erdfelt ac24196b0d Happy New Year 2016 2016-01-04 14:34:20 -07:00
Joakim Erdfelt cd39fd84fe Happy New Year 2016 2016-01-04 14:31:22 -07:00
Joakim Erdfelt b5db18378d Happy New Year 2016 2016-01-04 14:21:26 -07:00
Greg Wilkins 460e6e2ff3 Refactored DefaultServlet and ResourceHandler to use commong ResourceService 2015-12-27 16:17:11 +11:00
Greg Wilkins 133e9e054d Merge remote-tracking branch 'origin/jetty-9.3.x'
Conflicts:
	jetty-security/src/main/java/org/eclipse/jetty/security/HashLoginService.java
2015-12-18 12:50:19 +11:00
Greg Wilkins 5cd676581c 484622 - Improve handling of Direct and Mapped buffers for static content
ResourceHttpContent now applies a maxBufferSize that is passed through the call to getContent
ResourceCache now accounts for the exact memory usage of content, which may have an indirect
buffer plus either a direct or mapped buffer.  Thus content size may be 0, 1 or 2 times the
file size.

Some more limited unit tests
2015-12-18 12:36:27 +11:00
Joakim Erdfelt 31cd3fee84 Merge branch 'jetty-9.3.x'
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-http/src/main/java/org/eclipse/jetty/http/pathmap/PathSpecSet.java
	jetty-server/src/main/java/org/eclipse/jetty/server/handler/gzip/GzipHandler.java
	jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java
	jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java
2015-12-17 12:51:57 -07:00
Joakim Erdfelt 343aa066ae Merge branch 'jetty-9.2.x' into jetty-9.3.x
Conflicts:
	jetty-http/src/main/java/org/eclipse/jetty/http/HttpGenerator.java
	jetty-http/src/main/java/org/eclipse/jetty/http/PathMap.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/AbstractJettyMojo.java
	jetty-maven-plugin/src/main/java/org/eclipse/jetty/maven/plugin/WarPluginInfo.java
	jetty-rhttp/jetty-rhttp-gateway/src/main/java/org/eclipse/jetty/rhttp/gateway/Main.java
	jetty-security/src/main/java/org/eclipse/jetty/security/PropertyUserStore.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/CrossOriginFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/GzipFilter.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/CompressedResponseWrapper.java
	jetty-servlets/src/main/java/org/eclipse/jetty/servlets/gzip/GzipHandler.java
	jetty-util/src/main/java/org/eclipse/jetty/util/IncludeExclude.java
	jetty-util/src/main/java/org/eclipse/jetty/util/RegexSet.java
	jetty-util/src/test/java/org/eclipse/jetty/util/IncludeExcludeTest.java
	jetty-util/src/test/java/org/eclipse/jetty/util/ssl/SslContextFactoryTest.java
2015-12-16 12:56:13 -07:00
Matt Gilman abe5d090bb [447816] - ServletHolder#compareTo not transitive
Updating compareTo to properly order when one _className is null and the other is not.

Signed-off-by: Matt Gilman <matt.c.gilman@gmail.com>
2015-12-16 09:24:40 +11:00
Matt Gilman e8b3b68e90 [447816] - ServletHolder#compareTo not transitive
Updating compareTo to properly order when one _className is null and the other is not.

Signed-off-by: Matt Gilman <matt.c.gilman@gmail.com>
2015-12-14 15:03:31 -05:00
Greg Wilkins ae9dc7922d 483427 - AsyncContext complete while pending async Reads/Writes
improved unit test
2015-12-04 10:10:12 +11:00
Joakim Erdfelt 97722aeea8 Merge branch 'jetty-9.3.x' 2015-12-02 12:20:06 -07:00
Joakim Erdfelt bae1138211 Fixing test expectations on Decorator counts 2015-12-02 12:19:52 -07:00
Greg Wilkins ddba6c20cd 483427 - AsyncContext complete while pending async Reads/Writes 2015-12-02 16:46:20 +11:00
Greg Wilkins 4bbd060ca8 483427 - AsyncContext complete while pending async Reads/Writes 2015-12-02 16:07:59 +11:00
Greg Wilkins 4ed4fda173 Merge remote-tracking branch 'origin/jetty-9.3.x' 2015-11-18 15:53:36 +11:00
Greg Wilkins 8ed34b3395 482243 GzipHandler include test 2015-11-18 15:52:32 +11:00
Greg Wilkins 0d647fc95a Merge remote-tracking branch 'origin/jetty-9.3.x' 2015-11-18 15:11:17 +11:00
Greg Wilkins 12ec44894b 482272 Fixed relative symlink checking 2015-11-18 11:13:35 +11:00
Greg Wilkins cfeee5cec7 479903 - improve async onError handling 2015-10-16 14:51:57 +11:00
Simone Bordet 29e64f5b1c Fixed test. 2015-10-07 23:10:11 +02:00
Joakim Erdfelt 5300f0c7f7 478757 - DebugHandler thread name is mangled
+ Added testcase, and fixed handler for threadname output.
2015-09-30 12:47:31 -07:00
Greg Wilkins 67aee72bdd 477680 Encode merged query parameters 2015-09-18 13:19:00 +10:00
Greg Wilkins 99f4ed7352 477737 Improve handling of etags with dynamic and static gzip 2015-09-18 12:30:02 +10:00
Greg Wilkins 2d88fdf386 477278 Refactored DefaultServlet for cached Gzip & Etags
Refactored the DefaultServlet to better handle static gzipped files with etags in the cache.
Required a simplification of always having a HttpContent rather than the prior situation of
having either a Resource or a HttpContent.  So introduced a HttpContent.Factory, of which
the ResourceCache is the normal implementation, but there is also now a ResourceContentFactory
that creates content when there is no cache.

The Gzip resource is now associated with the normal resource, so less lookups are needed.
This also give scope for caching dynamic gzipping in the future.

The GzipHttpContent class has been introduced to send content with the headers of the
uncompress, but content of the compressed resource.
2015-09-17 18:19:58 +10:00
Greg Wilkins 02c5ea30be 477123 - AsyncListener callbacks need context scope
Also added DebugListener and deprecated DebugHandler
2015-09-11 12:06:23 +10:00
Greg Wilkins 2cc663685a ContextHandler.ContextScopeListener
Added a listener that is called as any thread enters/exits a context/request scope. This is
both normal servlet dispatches and async callbacks.
2015-08-19 15:30:52 +10:00
Greg Wilkins 087b4c94d7 474358 - DefaultServlet bad Content-Type on compressed content 2015-08-14 16:03:08 +10:00
Greg Wilkins 108821aacb 474634 - AsyncListener.onError() handling.
Fixed more tests in jetty-servlets
2015-08-13 18:44:25 +10:00
Greg Wilkins 8c0e4f53d3 474634 - AsyncListener.onError() handling.
Fixed AsyncContextTests
2015-08-13 18:12:38 +10:00
Greg Wilkins f21ea15725 474634 - AsyncListener.onError() handling.
Handle errors thrown from dispatch when async is started with onError
2015-08-13 18:06:14 +10:00
Greg Wilkins 0f6a83f710 474634 - AsyncListener.onError() handling.
Fixed async blocking read test
2015-08-13 16:55:45 +10:00
Greg Wilkins d1aa9ce993 474634 - AsyncListener.onError() handling.
Removed special termination case handling. Unhandle can be avoided with a break loop.
Replaced actions COMPLETING and COMPLETED with COMPLETE (which is an action)

Refactored test harness to use a static history array rather than headers
2015-08-13 16:22:02 +10:00
Simone Bordet 79086f3fe3 474634 - AsyncListener.onError() handling.
Interim work on getting the right behavior for onError().
2015-08-13 01:33:28 +02:00
Joakim Erdfelt 8837291393 474634 - Exception handling from AsyncContext handling inconsistent
+ Adding AsyncListenerTest examples of Exceptions during AsyncContext
  scoped servlet requests.
2015-08-10 10:55:44 -07:00
Greg Wilkins 04062a8383 Improved graceful shutdown and added tests 2015-07-02 16:57:56 +10:00
Greg Wilkins 9eb2cb4c0f 446564 Refactored RequestLog Mechanism
reverted API
2015-04-22 10:37:39 +10:00
Joakim Erdfelt bcd4e5fc45 464727 - Update Javadoc for Java 8 DocLint
+ Fixing javadoc in jetty-servlet
2015-04-21 14:31:44 -07:00
Greg Wilkins 1cb0449be3 Organised imports 2015-03-26 12:32:15 +11:00
Joakim Erdfelt 87246263b8 453834 - CDI Support for WebSocket
+ Verifying ServletContextHandler behavior of Decorators
+ Marking old ServletContextHandler methods as deprecated
+ Updates to DecoratedObjectFactory
+ Removing customized weld scopes/context (for now)
+ Deferring JSR356 ServerContainer endpoint init
  till Container.doStart() to allow weld to init properly first
+ Removing JSR356 BasicServerEndpointConfigurator in favor
  of ContainerDefaultEndpointConfigurator
+ Only decorating server endpoints if they were created by
  ContainerDefaultEndpointConfigurator, all others are trusted
  to be complete and injected already.
2015-03-12 10:09:52 -07:00
Joakim Erdfelt 130afb9535 Merge branch 'jetty-9.2.x'
Conflicts:
	jetty-client/src/main/java/org/eclipse/jetty/client/LeakTrackingConnectionPool.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientLoadTest.java
	jetty-client/src/test/java/org/eclipse/jetty/client/HttpClientUploadDuringServerShutdown.java
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpInput.java
	jetty-spdy/spdy-server/src/test/java/org/eclipse/jetty/spdy/server/SynDataReplyDataLoadTest.java
	jetty-websocket/websocket-server/src/test/java/org/eclipse/jetty/websocket/server/TooFastClientTest.java
2015-03-06 15:57:52 -07:00
Greg Wilkins 9edd7c4b30 461070 Handle setReadListener on request with no content 2015-03-07 08:44:51 +11:00
Greg Wilkins f44bf8e368 460210 - ExecutionStragegy producer for SelectManager calls onOpen from produce method
Further refactoring.   Handle the initial onDataAvailable and final onAllDataRead calls
specially, as they may need to be called without scheduling read interest.
2015-02-25 10:47:09 +11:00
Greg Wilkins 5d6bb9f5d0 460210 - ExecutionStragegy producer for SelectManager calls onOpen from produce method
Additional refactoring to better handle HttpInput state.   Moved the unready and read possible states into the HttpChannelState
2015-02-23 23:06:23 +11:00
Greg Wilkins 4ed6069aa8 default to delayed dispatch 2015-02-05 14:54:13 +11:00
Greg Wilkins 7db7ef3020 Added test cases and improved isReady and isFinished handling 2015-02-05 14:26:34 +11:00
Greg Wilkins f6cfe07a69 added direct buffer configuration 2015-02-05 10:02:01 +11:00
Greg Wilkins 5e95caaf29 added test for async IO isNotReadyAtEOF 2015-02-04 13:15:01 +11:00
Greg Wilkins 47055dd2c8 added test for async IO isNotReadyAtEOF 2015-02-04 12:40:36 +11:00
Greg Wilkins 40ffac3339 Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-02-04 12:35:34 +11:00
Greg Wilkins 44b3abc839 added test for async IO isNotReadyAtEOF 2015-02-04 12:35:04 +11:00
Greg Wilkins f5588c7ada Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-02-04 11:44:43 +11:00
Greg Wilkins acbffecb60 added test for async IO isNotReadyAtEOF 2015-02-04 11:43:19 +11:00
Greg Wilkins 65b8872227 Merge remote-tracking branch 'origin/jetty-9.2.x' 2015-02-04 10:59:34 +11:00
Greg Wilkins be127ee0cf added test for async IO isNotReadyAtEOF 2015-02-04 10:58:57 +11:00
Greg Wilkins e1cc5fb487 Merge remote-tracking branch 'origin/master' into jetty-9.3-ewyk
Conflicts:
	jetty-server/src/main/java/org/eclipse/jetty/server/HttpChannel.java
	jetty-server/src/main/java/org/eclipse/jetty/server/QueuedHttpInput.java
	jetty-util/src/main/java/org/eclipse/jetty/util/thread/NonBlockingThread.java
2015-01-08 15:21:01 +01:00