Hacker News new | ask | show | jobs
by ptrwis 1002 days ago
Nah, the old EJBs had a terrible programming interface. JavaEE 6 introduced a lot of good changes, but it was too late to convince people to switch back from Spring. To me it's like people abandoned JavaEE because it was hard to write fairly simple applications using EJBs (because it was) and switched to Spring, and then started writing large monoliths in Spring and realized they need to break them up into modules, so they invented microservices, but implemented them as standalone Spring Boot instances... when now it would be easier to go back to EJB + JMS. Microsoft has quite a similar "technology" called Microsoft Orleans, but it doesn't get much attention.
3 comments

> Last worked in EJBs in 2002. There’s still a bad taste in my mouth.

Although EJBs got improved so much in 2006 it was nearly a different technology, EJBs by themselves have been largely deemphasized in Jakarta EE. The main bean model is CDI and has been for some time.

By my earlier statement I meant that the old JavaEE application servers with standalone EJBs deployed as ejb-jars and JMS were good infrastructure while now JavaEE tries to become the next SpringBoot. In .Net I would prefer to have application servers instead of an operating system performing the same function. Blazor is nicer to use than JSF and Entity Framework than JPA.
Because it's tries to follow trends. The tech is not driving sales guys, they are driving the tech.
Except Spring also has its own way of doing beans, people keep forgeting about it.

By the way, Orleans powers Halo servers.

I stand by my comment, rather Websphere than Kubernets/YAML/WASM.

> Except Spring also has its own way of doing beans, people keep forgeting about it.

“Bean” is a broad term. It certainly didn't have a container to run standalone modules as ejb-jars. Spring is just a framework, not an application server with isolated classloaders that the JaveEE application servers were based on.

> I stand by my comment, rather Websphere than Kubernets/YAML/WASM. Agree Agree

> Spring is just a framework, not an application server with isolated classloaders that the JaveEE application servers were based on.

But Spring Boot with its embedded HTTP server and internal infrastructure is certainly more than just a framework. It has its own class loade (launchedurlclassloader). See https://dzone.com/articles/spring-boot-classloader-and-class...

Piranha Cloud on the other hand runs Jakarta EE code without any class loader of its own. See https://blogs.oracle.com/javamagazine/post/you-dont-always-n...

Last worked in EJBs in 2002. There’s still a bad taste in my mouth.