Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jakartaee-platform-dev] [External] : Additional profiles

This is more or less the opinion I have formed over the years based on observing end users and applications that I have come across.

What I have found is that end users care about modularity a lot and just want to compose their own runtime from a very small set of basic technologies (Core Profile) or they don’t care about runtime composition that much at all and mostly don’t want to be bothered (Full Profile). I was a believer in the Web Profile for a long time and tried to get it adopted where I could. What I found is that it is almost always either too much or too little. So it makes total sense to me why it does not seem to have too much end user adoption.

I think either it is best to leave Web Profile mostly alone (and maybe prune it) or use it as a more effective replacement to Full Profile (and basically treat the Full Profile as mostly legacy). The things I currently believe can be fairly safely pruned from the Full Profile are all UI technologies except for Servlet as well as all the SOAP support. I hope in the not too distant future EJB could be entirely pruned as well. I would not add NoSQL or MVC as part of any profile just yet. I think for those technologies it is best to keep them under the Jakarta EE umbrella but focus on standalone use with either of the two profiles the end users really wish to use.

Reza Rahman
Jakarta EE Ambassador, Author, Blogger, Speaker

Please note views expressed here are my own as an individual community member and do not reflect the views of my employer.

> On Mar 17, 2021, at 6:06 AM, Dmitry Kornilov <dmitry.kornilov@xxxxxxxxxx> wrote:
> 
> Hi,
> 
> I am glad that this discussion is started. Introducing a new profile for developing microservices is a great idea. Some thoughts:
> 
> - I am not sure that I agree with an idea of introducing 2 smaller profiles. It's too much diversity. One is enough. It should be well balanced: be small and not too restrictive.
> - It should be based on CDI and Config. We don't have Config in Jakarta, so we should think of adopting MicroProfile Config or moving it to Jakarta namespace. All specs in the core profile should integrate with these two as much as possible.
> - It should support only one-app deployment model (executable jar) which is currently used in most of modern Microservices frameworks (Spring Boot, Helidon, Quarkus, Micronaut)
> - I agree that no frontend technologies like JSP, JSF should be included.
> - I am not sure that Servlet should be included, but I don't have a strong opinion about it.
> - I don't think that EJB should be there.
> - Most of applications are working with databases so database access technologies (JPA, JTA) should be included. I am not talking about JNoSQL here. It's too new IMO.
> 
> Thanks,
> Dmitry
> 
> -----Original Message-----
> From: jakartaee-platform-dev <jakartaee-platform-dev-bounces@xxxxxxxxxxx> On Behalf Of David Blevins
> Sent: 17 марта 2021 г. 3:11
> To: jakartaee-platform developer discussions <jakartaee-platform-dev@xxxxxxxxxxx>
> Subject: [External] : [jakartaee-platform-dev] Additional profiles
> 
> All, I've changed the subject so that those who want to advocate for releasing profiles separately can do so.  The danger of us using that thread to discuss the idea of more profiles in general is that it becomes very unclear who is actually asking for independent profile releases or if that is widely supported.
> 
>> On Mar 16, 2021, at 6:26 PM, Reza Rahman <reza_rahman@xxxxxxxxx> wrote:
>> 
>> I do agree something like “cloud profile” is probably a poor name. Believe it or not, people want to run their old COBOL applications on the cloud as is, let alone Java EE/Jakarta EE applications. The public cloud is far more un-opinionated than most people seem to realize. It’s best to stick with something a bit more generic/neutral like Minimal or Core Profile.
> 
> Jakarta EE Core sounds fantastic.  A name like that would inspire me to think super super tiny and perhaps with a requirement that everything in it can operate in a "Java SE" way.  I may be alone in that last thought, but it's still a great name.
> 
> I personally have a desire for something that is basically the Web Profile, but without any UI technologies.  It would still contain EJB Lite, Transactions, JPA and the like.  It's really just the UI technologies I'd like to eject.  Some specific reasons:
> 
> - Many of us are using JavaScript front-ends.
> - Faces and standard tag libs add significantly to startup times due to TDL scanning and annotation scanning.
> - JSP requires a compiler to be shipped with creates a severe security risk completely unnecessary for those not even intending to use it.
> - Expression Language exploits have also been at the center of some severe security vulnerabilities as they are also interpreted and sometimes injectable.
> 
> Where I get off the bandwagon is when people start suggesting getting rid of Servlets, etc.  We all build our servers on top of servlet containers so there's no point in pretending it's not there.  Similarly, people still heavily use things like @Schedule from EJB.  I could potentially be convinced it didn't need to contain JPA as that is something that can easily be added, but it starts to open the doors for people advocating it be stripped of good and still used backend technologies.
> 
> There will definitely be people who want to see a profile without EJB, Transactions or JPA.  Perhaps that might lead us down a path were we're introducing two new profiles; one super small and one marginally smaller than the Web Profile.  I'd be fine with that.  I can see advantages in something that is aggressively small and library-like.
> 
> If that became the case, perhaps Core would be the best name for the tiniest smallest profile and something else for the name of the "Web Profile with no UI APIs" profile.  For the later, I've tossed around "Headless" profile, but it's not the best name.
> 
> What particular specs would you want to see in a Jakarta EE Core?  Any thoughts on something that'd be exactly like the Web Profile, just with no UI stuff?  Do you see them as potentially the same or as separate profiles?
> 
> 
> -David
> 
> 
> 
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To unsubscribe from this list, visit https://urldefense.com/v3/__https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev__;!!GqivPVa7Brio!MtBvBEf_eXwjYRSijbeF5et2z3Z03kW00wykSAcHCQlOQZALqTEouNgbLzip74pbxJxA$ 
> _______________________________________________
> jakartaee-platform-dev mailing list
> jakartaee-platform-dev@xxxxxxxxxxx
> To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/jakartaee-platform-dev


Back to the top