Commit Graph

626 Commits

Author SHA1 Message Date
Simone Bordet 856d3338f2
Fixes #9391 - port/move Jetty WebSocket APIs, client and server to je… (#9469)
* Moved -api, -common, -client to jetty-core/jetty-websocket.
* Implemented jetty-core/jetty-websocket/jetty-websocket-jetty-server using only Jetty core APIs, not Servlet.
* Fixed Graceful shutdown order.
* Fixed mistakes in HttpFieldsWrapper, wrongly calling HttpHeader.name() instead of asString().
* Updated tests to pass cleanly.
* Fixed BOMs and POM dependencies.
* Introduced websocket-jetty.mod and websocket-jetty-client.mod, now used by ee10's Jetty WebSocket.
* Fixed OSGi references to old artifactIds.
* Added test to show how to lookup and use ServerWebSocketContainer from a Handler.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-03-24 19:42:51 +01:00
Simone Bordet 092a592278
Merged branch 'jetty-11.0.x' into 'jetty-12.0.x'.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-03-20 10:22:23 +01:00
Jan Bartel 38d3d7b8fc
Jetty 12.0.x improve multiversion annotations test (#9492)
* Improve testing of annotation parsing of multiversion jars
2023-03-16 18:54:04 +11:00
Joakim Erdfelt 71e94a57c0
Merge pull request #9481 from eclipse/fix/12.0.x/dependency-updates-report
Jetty 12 - Dependency Updates and Report Script
2023-03-14 06:06:56 -05:00
Greg Wilkins bd0186c2f7
Jetty 12.0.x 9444 servlet paths fully decoded (#9479)
getServletPath and getPathInfo will never return an encoded path segment. Instead, they will throw an IllegalArgumentException if they are called when there is a URI with violations.

Signed-off-by: gregw <gregw@webtide.com>
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2023-03-11 14:13:09 +01:00
Greg Wilkins b63c5ef611
HttpMessage interface for BadMessageException
Convert class BadMessageException to a HttpMessage.RuntimeException to allows different types of HttpExceptions exceptions.
This follows the pattern of the QuietException interface.
2023-03-10 09:59:05 +01:00
Joakim Erdfelt a03ec5ffc0
Update <ruleSet> for ee10 2023-03-09 10:24:33 -06:00
Jan Bartel f9a018105d
Issue #9459 empty session path in cookie (#9477) 2023-03-10 00:38:52 +11:00
Jan Bartel 9f9868b754
Issue #9463 NPE in ee10 maven plugin startup (#9475)
* Issue #9463 NPE in ee10 maven plugin startup
2023-03-10 00:34:31 +11:00
Joakim Erdfelt 20404f760c
<onlyUpgradable> set to true 2023-03-09 06:36:35 -06:00
Joakim Erdfelt b8a6ba10f6
Update ee10 servlet-jsp-api to 3.1.1 2023-03-08 16:15:41 -06:00
Joakim Erdfelt 7f52d4f3f0
Set <onlyProjectDependencies> config to true 2023-03-08 16:13:27 -06:00
Joakim Erdfelt 0feff8d35a
Ignoring jetty releases and maven alpha/beta versions 2023-03-08 16:08:09 -06:00
Ludovic Orban e266db1ab4 #9412 ee10: Fixed missing callback failure when ws endpoint cannot be instantiated
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-03-08 15:03:19 +01:00
Greg Wilkins 916cd9894d
Decode safe Path for #9444 (#9455)
Added URIUtil.decodeSafePath for EE10, to allow for %2F and %25 to remain encoded in the servlet API.
Fixed async dispatch to also safeDecode
Updated tests to expect decoded space
Apply suggestions from code review

Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-03-03 14:36:19 +01:00
Greg Wilkins 474136de57 #9311 Add Queued and Compound Pool implementations
This adds a QueuedPool that can wrap any other pool and provided a queue of Entries as a kind of cache.
2023-02-27 13:37:53 +01:00
Ludovic Orban e819809723
Fix `HugeResourceTest` (#9411)
#9408: restored HugeResourceTest:
 - fixed double-release bug in MultiPartFormData
 - used ByteBufferPool.NonPooling pool to work around #9311

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-02-27 09:12:50 +01:00
gregw 791c6a7991 Disabled the HugeResourceTest 2023-02-23 15:48:49 +11:00
Jan Bartel 4e97a59671
Issue #9403 sendError(404) not setError(404) for DefaultServlet (#9404) 2023-02-22 17:24:57 +11:00
Lachlan Roberts d6ff799588 Issue #9182 - make JakartaWSSCI.initialize() and JakartaWebSocketServerContainer public
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-17 18:02:49 +11:00
Lachlan 81046650ab
Merge pull request #9356 from eclipse/jetty-12.0.x-websocket-JPMS
cleanup of websocket to fix JPMS warnings
2023-02-17 15:30:54 +11:00
Lachlan Roberts 229b300f22 rename WebSocketUtil to WebSocketUtils
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-17 11:37:01 +11:00
Lachlan Roberts eb493f1b9d make WebSocketCoreSession public & other fixes
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-17 11:33:02 +11:00
Simone Bordet d21f38798e
Moved implementation methods ensure*() from the Response interface (#9390)
to ResponseUtils to avoid cluttering the main Response interface.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-17 08:50:46 +11:00
Greg Wilkins 0ca6295cbc
Rename process to handle (#9385)
Renamed Request.Processor to Request.Handler
Renamed Handler.process to Handler.handle
Renamed Rule.Processor to Rule.Handler.
Renamed accordingly methods and variable.
Updated comments accordingly.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-16 18:21:12 +01:00
Jan Bartel dd792b5607
Remove jetty-ant (#9382) 2023-02-16 13:48:29 +11:00
gregw 033de8611b Fixed FormAuthenticator redirection
Response redirect now correctly consumes content
2023-02-15 17:48:39 +11:00
Lachlan Roberts 43718f3e52 Merge remote-tracking branch 'origin/jetty-12.0.x' into jetty-12.0.x-websocket-JPMS 2023-02-15 17:12:59 +11:00
Lachlan Roberts e25c936802 remove exporting of internal packages in ee9 & ee10 websocket
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-15 16:59:29 +11:00
gregw a15af55a56 Merge remote-tracking branch 'origin/jetty-11.0.x' into jetty-12.0.x
Signed-off-by: gregw <gregw@webtide.com>
2023-02-15 15:31:33 +11:00
Jan Bartel ef8a4b4aa6 Restore range test for ee10 DefaultServletTest. 2023-02-15 15:07:11 +11:00
Jan Bartel e89b0ebc17 Restore non cross-context async session tests 2023-02-15 14:58:16 +11:00
Jan Bartel b9b26e2a82
Jetty 12 - Restore ee10 tests (#9214)
* Restore jetty-ee10-test-http2-webapp and jetty-ee10-test-integration modules

Co-authored-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-15 14:24:55 +11:00
Lachlan Roberts ce270cf34b fix remaining JPMS issues in websocket-core
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-14 17:25:15 +11:00
Lachlan Roberts 1d8e13220a resolve JPMS issues with CoreSession and WebSocketCoreSession
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-14 15:34:53 +11:00
gregw 4aa6bca630 Merge remote-tracking branch 'origin/jetty-11.0.x' into jetty-12.0.x
# Conflicts:
#	jetty-core/jetty-server/src/test/java/org/eclipse/jetty/server/ForwardedRequestCustomizerTest.java
#	jetty-ee9/jetty-ee9-nested/src/main/java/org/eclipse/jetty/ee9/nested/Request.java
#	jetty-ee9/jetty-ee9-nested/src/test/java/org/eclipse/jetty/ee9/nested/RequestTest.java
2023-02-14 10:07:18 +11:00
Lachlan Roberts cc40a545dc move websocket-core-common messages and util packages out of internal
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-14 09:43:25 +11:00
Simone Bordet e5b313e379
Jetty 12 - Review client notifiers (#9335)
* Introduced ResponseListeners to reduce per-request allocation.
* Removed ResponseNotifier in favor of ResponseListeners.
* Introduced RequestListeners to reduce the per-request allocation.
* Removed RequestNotifier in favor of RequestListeners.
* Removed unnecessary sharing of HttpRequest.requestListeners.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-13 17:36:29 +01:00
Lachlan Roberts 2d11517dd6 Merge remote-tracking branch 'origin/jetty-12.0.x' into jetty-12.0.x-websocket-autodemanding 2023-02-09 18:22:49 +11:00
Lachlan 3259a55ce3
Merge pull request #9287 from eclipse/jetty-12.0.x-multipartCleanups
Issue #9076 - Cleanups and fixes for multipart in Jetty 12
2023-02-09 18:10:01 +11:00
Jan Bartel 342bd40e0b
Jetty 12.0.x 9301 fix ee10 jstl jpms (#9321)
* Issue #9301 Fix dependencies for ee10-glassfish-jstl module

* Fix jstl,el,jsp to work in jpms and osgi.
2023-02-09 09:35:54 +11:00
Jan Bartel 751b0a8046
Issue #9301 Fix dependencies for ee10-glassfish-jstl module (#9303) 2023-02-09 09:35:02 +11:00
Olivier Lamy b070115dc9
Jetty 12 Hazelcast 5.x and disable auto detection/multicast" (#9332)
* Upgrade to hazelcast 5.2.1
* simplify disable autodetection

Signed-off-by: Olivier Lamy <olamy@apache.org>
2023-02-09 08:10:33 +10:00
Lachlan Roberts 341ac15061 #9287 - fix further test failures
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-09 08:37:00 +11:00
Lachlan Roberts d2dcbeba5b Issue #8991 - rename websocket isDemanding() method to isAutoDemanding()
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-08 14:18:02 +11:00
Lachlan Roberts cb511bed8a Issue #9287 - fix failing tests
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2023-02-08 13:58:18 +11:00
Lachlan Roberts 6950d73fce Merge remote-tracking branch 'origin/jetty-12.0.x' into jetty-12.0.x-multipartCleanups 2023-02-08 11:55:37 +11:00
Ludovic Orban b87f9385c8
Jetty 12: Cleanup `StatisticsHandler` (#9291)
#9145 cleanup statistics

Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2023-02-07 17:43:46 +01:00
Simone Bordet d02932f690
Fixes #9288 - Jetty 12 - Use oej.http.HttpCookie in jetty-client. (#9289)
* Replaced usages of java.net.HttpCookie with oej.http.HttpCookie.
* Moved server-side only methods from HttpCookie to HttpCookieUtils.
* Introduced and implemented oej.http.HttpCookieStore.
* Removed now obsolete oej.util.HttpCookieStore.
* Introduced HttpScheme.isSecure(String), to avoid code duplication.
* Fixed handling of cookie "localhost" domain in HttpClient.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2023-02-07 17:28:01 +01:00
Greg Wilkins f565122571
Redo Handler renaming (#9318)
* Redo Handler renaming

Wrapper to Singleton
BaseWrapper to Wrapper

* Updates from review
2023-02-07 16:41:15 +11:00