Further to this week's discussion regarding where to put EE integration chapters for Jakarta Specifications, we need to discuss offline to evaluate the approaches. At the moment, CDI EE was proposed to be a new spec (see
here) while Jakarta Persistence with CDI integration was proposed to be added to the platform specification (see
here). It is better to be consistent across the platform project.
Context: some Jakarta EE specifications have integration parts with other Jakarta EE specifications, such as CDI or potentially Jakarta Persistence.
Issue: These dependencies might introduce some circular dependencies among the specs. In order to avoid the circular dependencies, the integration parts need to be somewhere else.
Proposals:
Proposal 1: Create a new specification to hold all of the integration part, such as CDI EE, Persistence EE
Pros:
The ownership is clear to start with but it might not be once the relevant specs start adding tcks.
Cons:
The number of specs might be increased dramatically.
For some certification with web/core profile or platform, separate parts are to be spelled to differentiate web/core profile or platform implementers.
Proposal 2: put the integration part to Core/Web Profile or Platform specifications under separate modules.
Pros:
The number of the specs will not change.
It is clear that certification for core/web profile and platform are clear which tcks are to be executed.
This can be released when releasing the platform or web profile or core
profile. However, these TCKs can be released individually.
Cons:
The ownership is less clear. It might not be an issue if the involved spec teams work together on this or the tests clearly document the owners.
Please add other proposals and cons/pros I missed.