-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
JAX-RS ApplicationPath and Provider are bean defining annotations #1924
JAX-RS ApplicationPath and Provider are bean defining annotations #1924
Conversation
mkouba
commented
Apr 8, 2019
- resolves Make javax.ws.rs.ApplicationPath a bean defining annotation #1880
Seems like it needs some |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved pending the imports being sorted out
eeae65a
to
faf66d6
Compare
I can confirm that this PR fixes #1927 too |
@mkouba I have doubts about this PR but maybe I don't understand everything. My doubts are about the |
I'm wondering if there's confusion between ArC removal of Beans, and native image DCE? Is this fix purely to stop ArC from removing Beans, or does it impact native image size too? |
@kenfinnigan my understanding is that if all the providers are made unremovable CDI beans, they will be included in the native image. Or am I wrong on this? |
That's why I was asking, as I'm not sure. Is there a correlation? Is it possible that ArC bean removal is separate and distinct from native image DCE? |
Good question! My guess is that they are not the same thing but it's a great opportunity for @mkouba to clarify |
@kenfinnigan So ArC bean removal is a "framework level DCE". Normal DCE does not apply here, because we need hold references of all beans so that we're able to do programmatic lookup (for example
@gsmet Yes, you're right. So in general, any |
Ok, so that's definitely bad then. As we don't want to retain all Is there a way to register the provider classes once RESTEasy Common has found which ones we need? Instead of adding bean definition for everything with |
So is the |
Yes, as it doesn't include for reflection to substrate any provider classes that aren't used by |
In that case, the |
6f1f545
to
7e121d2
Compare
- Providers are unremovable beans - a Provider with an injection point is Singleton - resolves quarkusio#1880
7e121d2
to
7b80be3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
Let's wait for CI and merge.