Commit Graph

2944 Commits

Author SHA1 Message Date
Greg Wilkins 94c1424029 Issue #841 support reset in buffering interceptors
Added resetBuffers to the output interceptor.
2016-08-15 19:38:18 +10:00
Simone Bordet 9f9e9ecaf9 Changes for Issue #824 (#825)
* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Introduced new method HttpChannelState.asyncError() to be called in
case of asynchronous errors, i.e. those errors that do not happen in
the HttpChannel.handle() loop.

Implemented HTTP/2 callbacks to call HttpChannelState.asyncError()
and plug in the existing error handling mechanism.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>

* Issue #824 - Implement notifications of asynchronous error conditions for HTTP/2.

Improved implementation to ignore idle timeouts for streams and
session in case that requests are being handled, matching the HTTP/1.1
behavior.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2016-08-12 11:02:52 +02:00
Greg Wilkins 5fefd5d8bd Issue #185 Implement RFC 7239
Improved test harness
Added more configurability
Fixed SSL session and certificate bugs
2016-08-12 11:39:36 +10:00
Greg Wilkins 5c9a637d4f UnitTest #833 2016-08-12 10:29:38 +10:00
Greg Wilkins b45af1a3c9 Issue #185 Implement RFC 7239
Also handle legacy Https headers for #834
2016-08-11 18:56:51 +10:00
Greg Wilkins f493e0f528 remove println 2016-08-10 16:26:43 +10:00
Greg Wilkins cc8c3590c0 Issue #786 Buffering Response Handler
Fixed commit of empty buffers
2016-08-10 16:01:56 +10:00
Andriy Rosa 1d968ef53a HttpOtput: fix async write for heap ByteBuffer (#811)
* Remove unused imports

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* Improve HttpOtputTest

HttpOutputTest gives false positive results for couple of tests
(testAsyncWriteBufferLargeHEAD, testAsyncWriteBufferLarge). This happens
because only the tail of the response is being checked, and that fact that
the beginning of the response in not being sent is ignored.

For regular encoding responses it is easy to check that the entire content is
received by checking it with `response.endWith(expectedContent)`. However
for chunked responses extra parsing is required to check the content in such way.
For the sake of code simplicity only start and end of the response is being checked
for the chunked encoded responses.

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* Add testAsyncWriteBufferLargeDirect test to HttpOutputTest

Just to verify that everything is right when sending native buffers
asynchronously instead of heap ones.

Signed-off-by: arhimondr <andriyrosa@gmail.com>

* HttpOtput: fix async write for heap ByteBuffer

Fix bug when asynchronous writes of Heap ByteBuffer were ignored.

ByteBuffer position was moved to the end in the constructor,
then in the `process` method `if (_buffer.hasRemaining())` condition
was always evaluated to `false` and the actual write was not performed.

Add assertion in `HttpOutputTest` to verify that after the asynchronous
write position of the buffer is always at the end.

Signed-off-by: arhimondr <andriyrosa@gmail.com>
2016-08-05 08:51:10 +10:00
Greg Wilkins d57a11668d Issue #798 Sporadic async IO failure 2016-08-03 17:22:31 +10:00
Greg Wilkins 83483e1f69 Response.reset does not clear session cookie #789
Added unit test
2016-08-02 13:49:05 +10:00
Greg Wilkins e0a1a1988f Response.reset does not clear session cookie #789 2016-07-29 16:45:09 +10:00
Greg Wilkins ad93923e1d Merge branch 'jetty-9.3.x' of github.com:eclipse/jetty.project into jetty-9.3.x 2016-07-29 16:43:04 +10:00
Greg Wilkins 23cb28e856 improved debug logging of request/response 2016-07-29 12:34:12 +10:00
Joakim Erdfelt 2830e51e04 Merge branch 'jetty-9.3.x' into release-9.3.11 2016-07-28 12:20:36 -07:00
Greg Wilkins ffb52a948b Buffering Response Handler #786 2016-07-28 15:05:44 +10:00
Greg Wilkins 32e2ee8cb9 start property for stopTimeout #774 2016-07-27 14:12:46 +10:00
Niels Basjes 117cbc2bd1 Fix NCSA request log in case of missing useragent. (#770)
Signed-off-by: Niels Basjes <niels@basjes.nl>
2016-07-27 10:32:31 +10: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
Jan Bartel 92e91e8695 Revert "Issue #759"
This reverts commit 7b6bf03133.
2016-07-22 16:10:37 +10:00
Jan Bartel 7b6bf03133 Issue #759 2016-07-22 15:50:17 +10:00
Joakim Erdfelt 6e1b1cdb36 Updating to version 9.3.12-SNAPSHOT 2016-07-21 19:07:19 -07:00
Joakim Erdfelt 9fd6d4354e Updating to version 9.3.11.v20160721 2016-07-21 18:37:09 -07:00
Simone Bordet 71eaacf855 Fixed Javadocs. 2016-07-21 18:48:44 +02:00
Greg Wilkins 3c0859d034 improve commit debug 2016-07-21 15:59:27 +10:00
Greg Wilkins 5718726a8c Incorrect default ALPN protocol #671
Correctly handle protocol aliases
2016-07-21 13:01:25 +10:00
Greg Wilkins e82ed5afb9 Fix #671 Incorrect default ALPN protocol 2016-07-20 23:16:50 +10:00
Greg Wilkins 7e16731b9d fix #592 2016-07-20 16:59:28 +10:00
Greg Wilkins 5afbcd4c6a Allow setCharacterEncoding after getOutputStream #733 2016-07-20 09:56:25 +10:00
Greg Wilkins 35bb6620a1 Extensible ErrorHandler for different mimetypes #230 2016-07-18 21:12:48 +10:00
Greg Wilkins 3765efad2b Extensible ErrorHandler for different mimetpyes #727 2016-07-18 11:38:10 +10:00
Jesse McConnell 1e3cef80ee Merge pull request #735 from WalkerWatch/jetty-9.3.x
Updated RequestLog xml/module/documentation. Resolves #734
2016-07-15 14:32:03 -05:00
WalkerWatch 00b3738536 Updated RequestLog xml/module/documentation. Resolves #734
Signed-off-by: WalkerWatch <ctwalker@gmail.com>
2016-07-15 13:08:30 -04: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
Greg Wilkins 4055146dcd Fix #671 Incorrect default SLPN protocol 2016-07-13 11:09:53 +10:00
Joakim Erdfelt 35de3899b6 Issue #706 - Removing org.apache.jasper.compiler.disablejsr199 references 2016-07-12 17:49:11 -07:00
Joakim Erdfelt 0e6833b770 Issue #687 - Simplifying AllowSymLinkAliasChecker logic 2016-07-12 11:39:58 -07:00
Joakim Erdfelt 596e372c7a Fixes #687 - Normalizing resolved symlinks 2016-07-11 10:31:07 -07:00
Greg Wilkins adf3281ba8 Issue #696 Improve testing of LocalConnector
Fixed some races in the implementation
2016-07-08 21:15:36 +10:00
Greg Wilkins 0d74658ab6 fixed bad tests 2016-07-08 13:37:41 +10:00
Joakim Erdfelt 602222182c Merge branch 'jetty-9.3.x' of github.com:eclipse/jetty.project into jetty-9.3.x 2016-07-07 09:12:09 -07:00
Joakim Erdfelt a6276c3017 Issue #687 - Adding AllowSymLinkAliasCheckerTest
+ Replicated, in test case form, the example present in the
  filed issue.  All tests pass.
2016-07-07 09:11:19 -07:00
Greg Wilkins 183e3acabb Issue #695 improve getResponse methods 2016-07-07 16:36:46 +10:00
Greg Wilkins 5af61cfc38 fix #685 SecureRequestCustomizer SslSession attribute 2016-07-06 11:55:41 +10:00
Greg Wilkins cfe5abf8e6 Issue #660 NPE in Request
Made request more robust for calls after reset.
2016-06-24 14:33:18 +10:00
Greg Wilkins c3173932f0 Revert "Issue #660 - simplifying parameter extraction to prevent NPE"
This reverts commit ecea486d07.
2016-06-23 12:43:29 +10:00
Jesse McConnell ae931538ab [maven-release-plugin] prepare for next development iteration 2016-06-22 13:59:10 -05:00
Jesse McConnell df1ed4fb03 [maven-release-plugin] prepare release jetty-9.3.11.M0 2016-06-22 13:59:06 -05:00
Jesse McConnell 2b947e8f72 Merge branch 'jetty-9.3.x' into release-9.3.10 2016-06-22 13:22:27 -05:00
Joakim Erdfelt ecea486d07 Issue #660 - simplifying parameter extraction to prevent NPE
+ The checks in Request.restoreParameters() seem superfluous
  as MultiMap.addAllValues() is null and empty set safe
2016-06-22 09:53:24 -07:00
Joakim Erdfelt cce7837e64 Fixes #654 - ServletContext.getResourceAsStream("/") should return null
+ Jetty 9.2 (and earlier) used a Resource.getInputStream() implementation
   that would trigger an IOException on-construction (vs on-first-access)
   due its use of java.io.FileInputStream(File) which had a isDirectory
   check in its constructor.
 + Jetty 9.3 and onward uses java.nio.file.Files.newInputStream() which
   has the bad on-first-access behavior.
 + Changing the behavior of PathResource.getInputStream() to behave the
   same way as the prior FileResource.getInputStream(), as well as adding
   the Resource.isDirectory() check back into ContextHandler.getResourceAsStream(String)
   to prevent creation of the InputStream in the first place.
2016-06-22 09:09:05 -07:00