Generalize Render Response resource push to allow modern mechanisms (HTTP 103 Early Hints)#2174
Merged
Conversation
The Render Response phase (section 2.2.6) mandated pushing view resources using the Jakarta Servlet Server Push API. That API (PushBuilder / newPushBuilder) is deprecated, and HTTP/2 Server Push is no longer honored by browsers, so the requirement mandated a no-op. Reword the requirement to be mechanism-neutral: soften must to should, drop the deprecated API mandate and the Servlet 4.0 version gate, and name HTTP 103 Early Hints (RFC 8297) as the example mechanism. The choice of mechanism and whether to apply the optimization is left to the implementation. Closes #2173 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
+1 if you implemented it in mojarra, please let me know |
Member
Author
Draft PR: eclipse-ee4j/mojarra#5748 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Rewords the Render Response requirement in §2.2.6 (
RequestProcessingLifecycle.adoc) so it no longer mandates the deprecated Jakarta Servlet Server Push API.must→shouldPushBuilder/newPushBuilder()) and the "Jakarta Servlet 4.0 or later" version gateAlso adds a ChangeLog entry under the 5.0 backwards-compatible changes.
Why
The previous text mandated pushing resources via the Jakarta Servlet Server Push API, which is now deprecated, and HTTP/2 Server Push is no longer honored by browsers (removed from Chrome 106, Oct 2022; never shipped by others) — so the
mustmandated a no-op against a deprecated API.HTTP/2 Server Push is intentionally not named as an example, to avoid enshrining a defunct technology in a forward-looking spec (see issue discussion). It remains permitted via the non-exhaustive "such as" wording.
Closes #2173