Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdi-dev] Why are CDI 4.0 Full implementations required to also provide SE (e.g. jakarta.enterprise.inject.se.SeContainer*) support?

Hi,

the structure of the CDI specification is as follows:

- CDI core (consists of CDI Lite and CDI Full, where Lite is a subset of Full)
- CDI SE
- CDI EE

Standalone implementations of CDI Lite indeed do not have to support CDI SE (and cannot, because of some methods in the SE API; we could define a subset of the CDI SE API that can be implemented under the Lite constraints, but didn't yet).

Implementations of CDI SE and CDI EE must support Full, as stated at the very beginning of the "CDI in Java SE" and "CDI in Jakarta EE" sections of the CDI specification.

Now, is it possible for standalone implementations of CDI Full to exist, without support of SE (or EE)? I don't think we ever considered that question, but I don't see anything preventing that. In any case, I don't think that matters in the JSON-B TCK issue. My understanding is that Jakarte Core Profile includes CDI Lite and not CDI Full, which implies that Jakarta Core Profile does _not_ include CDI SE (and cannot, at the moment, as described above).

LT

On Fri, Jun 3, 2022 at 7:53 PM Scott Stark <starksm64@xxxxxxxxx> wrote:
On the issue I made the comment that support for SE requires support for Full, but support for Full does not require SE. The CDI TCK userguide examples for running against WildFly have the following group exclusions:

Full Java EE Platform, excluded groups = se
Web Profile, excluded groups = javaee-full,se

So in both the Web Profile and Full Platform, Java SE related tests are excluded.


On Jun 3, 2022 at 12:43:31 PM, Brian M Decker <bmdecker@xxxxxxxxxx> wrote:
The question from the linked issue might be better posed as “Are CDI EE implementors required to provide an implementation for the CDI SE interfaces, too?”

The CDI specification states: “
CDI implementations that support the Java SE API are required to support CDI Full.”  This implies (but does not outright state) that there can exist CDI implementations that do not support the Java SE API.

-Brian
 

 

From: cdi-dev <cdi-dev-bounces@xxxxxxxxxxx> On Behalf Of Scott Marlow
Sent: Friday, June 3, 2022 12:17 PM
To: cdi-dev@xxxxxxxxxxx
Subject: [EXTERNAL] [cdi-dev] Why are CDI 4.0 Full implementations required to also provide SE (e.g. jakarta.enterprise.inject.se.SeContainer*) support?

 

Hi, Why are CDI 4.0 Full implementations required to also implement the CDI SE interfaces like jakarta.enterprise.inject.se.SeContainer*?  This came up in discussion on a JSON-B TCK challenge [1]. ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍

ZjQcmQRYFpfptBannerStart

This Message Is From an External Sender

This message came from outside your organization.

ZjQcmQRYFpfptBannerEnd

Hi,

Why are CDI 4.0 Full implementations required to also implement the CDI SE interfaces like jakarta.enterprise.inject.se.SeContainer*?  This came up in discussion on a JSON-B TCK challenge [1].

Thanks,
Scott

[1] https://github.com/eclipse-ee4j/jsonb-api/issues/326

_______________________________________________
cdi-dev mailing list
cdi-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdi-dev
_______________________________________________
cdi-dev mailing list
cdi-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/cdi-dev

Back to the top