Hi,
Thanks for starting this James, I agree we need to get this going.
Inlined ...
I'd like to propose we make an attempt to resolve the issue of deprecating @Context and supporting CDI.
+1
We currently have the following issues associated with this:
I see a number of these are still unassigned. It would be nice if contributors could go over the list and pick up at least one.
My proposal is that we add @Deprecated(forRemoval = true) to the @Context annotation. We should probably also deprecate the ContextResolver as that can be replaced by a CDI producer.
I suspect we have agreement on this. +1 for me.
For the client, I think we should just be explicit in the specification that if a client is running within a CDI container, that CDI will be supported.
Yes, it must be supported.
If it's outside a CDI container, it will not be.
Correct.
The question there becomes, how do we support injection for resources which @Context injection previously worked on. We could just say, it no longer supports it and you need to boot a CDI container if you want that. Or, potentially, there is a way to say
we support Jakarta Injection and allow @Inject to effectively replace @Context.
We should make the transition as smooth as possible, if we can support @Context via CDI, it would be a better option IMO. However, I’d like to hear from those actually implementing the spec on this one.
— Santiago
|