As we celebrate the last 20 years of enterprise Java, it is important to look back at the platform’s history to better understand where it came from and how we arrived where we are today.
Enterprise Java emerged during a pivotal time in the history of enterprise computing. When Java 2 Platform, Enterprise Edition (J2EE) 1.2 was introduced in December 1999, it not only marked the birth of enterprise Java, but also signaled an important shift in how organisations were thinking about the web.
Roughly five years earlier, in May 1995, the Java programming language had been publicly released. The language was originally developed to address obstacles faced by a stealth innovation team at Sun Microsystems building the Star7, an interactive handheld home entertainment controller; however, after a tepid response from the television industry, the team instead set its sights on the internet.
Web browsers were making the web more accessible to users, and when the Java language was first announced by Sun, it came with a crucial endorsement: Netscape, one of the leaders in the nascent Web browser market at the time, announced in 1995 that it would include support for Java in its namesake browser.
Into the enterprise
By 1999, Java had developed a loyal following among application developers and Sun saw an opportunity to extend the language for traditional enterprise workloads. With the launch of J2EE, and another technology that was gaining prominence—the application server—enterprises now had a platform that was designed to meet their needs with capabilities for things like security, scalability, and reliability.
That same year, a new project was started called Enterprise Java Bean Open Source Software (EJB-OSS), which implemented the EJB application programming interface (API) in J2EE. The moniker was eventually shortened to JBoss and the project sprouted a company by the same name that was focused on the development of an open source application server.
When J2EE 1.3 was released in 2001, it delivered on the “write once, run anywhere” vision of the Java language by enabling portability across the various Java application servers on the market, which by this time included a number of open source and proprietary offerings. Following the 1.3 release of J2EE, the platform entered several years of quiet stability until 2006 when Sun renamed it to Java Enterprise Edition (EE) and launched Java EE 5. That same year, Red Hat acquired JBoss.
Java and open source
While the source code for the Java language was always available, it was not formally open sourced until later in 2006 when Sun released its core Java technologies under the GNU General Public License 2.0 (GPLv2). This was broadly seen as an important step in the evolution of Java toward a more collaborative, community-driven future.
Not long after this, Sun was acquired by Oracle, where Java EE continued in relative calm for a number of years. During this time, the release cadence of the enterprise Java platform slowed. After Java EE 6 was released in 2009, four years passed before Java EE 7 was released in 2013, and by 2016 Java EE 8 appeared to be on a similar trajectory.
It was also during this period that enterprise IT started to pivot toward lighter and more modular application approaches. This was a shift from the traditional, monolithic applications for which Java EE had long been a fundamental enabler. With organisations beginning to favor application architectures like microservices, Java EE needed to evolve.
To help meet this need, members of the enterprise Java community came together in 2016 and released the MicroProfile project, now part of the Eclipse Foundation, which aims to optimise enterprise Java for microservices architecture. Binstock sees a parallel with the smaller companies that years before found value in implementing a selection of Java EE services instead of adopting the entire stack.
In 2017, Oracle announced the donation of Java EE to the Eclipse Foundation, where it could more closely align with the ongoing work taking place around MicroProfile and innovation on the platform can happen faster and more collaboratively.
As part of the Eclipse Foundation, the platform took on a new name, becoming Jakarta EE in 2018, and today boasts a vibrant community that continues to look to the future.