jakartaee / jakartaee/platform

Revise programming model with use of virtual threads

Open
#1,037 2 comments 2 reactions 0 assignees View on GitHub
EE12
Dominant language
No language data
Stars
230
Forks
77
Avg merge
8d 5h
Merged PRs (30d)
1

Description

**Is your feature request related to a problem? Please describe.**
Simplify the programming model with Virtual Threads

**Describe the solution you'd like**
Jakarta EE 12 is proposed with a base Java version of 21. We should actively consider including more features that can simplify the programming model due to the fact that virtual thread will be available. We should consider areas in the platform where there are restrictions in programming model intended to steer developers away from blocking style code and platform management of threads. For example, some messaging patterns require the use of MDBs. In a virtual thread environment, code can be written to just call the messaging provider and the virtual thread can just wait (block) for the next message to become available. When it is available, continue with its work. Previously, this would be managed by an MDB or maybe with Inversion of Control. This requirement may be relaxed.

We can consider additional virtual thread enhancements however with the base JDK at 21, some of the more recent virtual thread enhancements may not be available.

Contributor guide

Open the contributing guide

Research direction

Start with issue #1037 and review the Jakarta EE 12 proposal to understand the Java 21 baseline and virtual-thread capabilities. Examine the cited messaging patterns, including MDB usage and provider calls, and identify which programming-model restrictions could be reconsidered. Done requires an agreed, concrete set of platform enhancements rather than a general investigation.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.