Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-platform-dev] Retire EJB-Lite from web profile?


By the way, I don’t think @stateless is a name that should be carried forward. I can recall at least 50 times trying to explain how this name maps to the many things that this one annotation brings in. I think something like @service defined as a CDI stereotype included as a common annotation is a lot easier to explain and understand. The spring folks got this right for almost 15 years now.

From: jakartaee-platform-dev <jakartaee-platform-dev-bounces@xxxxxxxxxxx> on behalf of arjan tijms <arjan.tijms@xxxxxxxxx>
Sent: Saturday, August 13, 2022 7:51 AM
To: jakartaee-platform developer discussions <jakartaee-platform-dev@xxxxxxxxxxx>
Subject: Re: [jakartaee-platform-dev] Retire EJB-Lite from web profile?

On Fri, Aug 12, 2022 at 8:25 PM David Blevins <dblevins@xxxxxxxxxxxxx> wrote:

The only thing left is the good stuff and that good stuff isn't legally "EJB"  How much work do we want to put into moving the good stuff into yet another spec not called EJB?

In my humble opinion a lot really, but for details see below:

I think that practically speaking one of the biggest problems in Jakarta EE that has plagued the platform for like forever is its various different component models and their incompatibility. Sometimes these incompatibilities are big, sometimes they are small and subtle, but they are always there.

From Java EE 6 onwards we had the opportunity to radically simplify the platform, while at the same time keeping all of its strengths, by unifying around that single component model that was introduced in Java EE 6. A rare opportunity in any technical platform as typically you trade in something when simplifying a platform.

I'm strongly of the opinion that not having dedicated enough effort towards this at the time (for Java EE 7 mostly) has unnecessarily damaged the platform and its cohesion. Though the creation of @Transactional for Jakarta Transactions (JTA at the time) was certainly a monumental achievement, we should have done similar things for much more specs.

That all said, it's not just about "yet another spec not called EJB/Enterprise Beans", it's about uniting the platform and building everything on top of a common core (CDI). So having an @Stateless annotation that is spec defined to be a stereotype for various CDI based services would be very useful. But keeping Enterprise Beans (lite) in its current form (with its own bean model, which is only somewhat aligned with CDI), please let's not do that.

I wrote down some of those thoughts here:

Kind regards,
Arjan Tijms


Back to the top