OpenCms 22 will support Tomcat 11 / Jakarta EE

Alex Kandzior via opencms-dev <[email protected]> Tue, 14 Jul 2026 10:10:16 +0200
Newsgroups gmane.comp.cms.opencms.devel
Message-ID <[email protected]>
--===============7224685435610355588==
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_B4008882-7418-46A2-8B4F-B38E54BD0BCC"


--Apple-Mail=_B4008882-7418-46A2-8B4F-B38E54BD0BCC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

Dear OpenCms Users,

OpenCms 22, planned for October 2026, will run on Tomcat 11 and Jakarta =
EE, with a legacy variant so existing installations can follow at their =
own pace.

If you have followed OpenCms development for a while, you may have =
wondered when OpenCms would move to Jakarta. That time has come, and the =
story of why it is now, and not earlier, is mostly a story about =
dependencies.

Like every mature Java application, OpenCms builds on many external =
libraries. Over the last years, more and more of them made the move to =
Jakarta, but two of the biggest did not: Apache Solr, which powers the =
OpenCms search, and Vaadin, the framework behind the Workplace UI.

Vaadin was the harder case of the two. The OpenCms Workplace is built on =
a Vaadin version whose open source line ended a few years ago; the final =
open source releases only support the old servlet API, and after the =
license change we had given up hope for a properly converted Jakarta =
version. Replacing Vaadin entirely would mean rewriting large parts of =
the Workplace, a huge effort that we wanted to avoid.

For a time, waiting was simply the right call. If we are honest, we half =
hoped the namespace split would eventually blow over. And Jetty 12 gave =
us a modern, fully supported runtime that can still host javax based =
applications, so we made it our default.

That picture has changed. With Solr 10, released this March, the last of =
our major dependencies besides Vaadin completed the switch. And when we =
took a closer look at today's migration tooling, the Vaadin problem =
turned out to be solvable too: using a Gradle plugin that builds on the =
Apache Tomcat Migration Tool for Jakarta EE, we could convert the Vaadin =
dependencies to the new namespace automatically. With that, the =
Workplace keeps running on modern servlet containers without a rewrite. =
=46rom there, the rest of the migration was manageable work. In fact, =
the biggest part is already behind us: the opencms-core sources have =
been converted, active development is now Jakarta based, and everything =
runs as expected.

How the two release variants work, what changes for developers, and the =
upgrade path towards OpenCms 22 and 23 are covered in the full article =
on opencms.org:

https://www.opencms.org/en/article/OpenCms-goes-Jakarta

Kind regards,
Alex.

-------------------
Alexander Kandzior

Alkacon Software - The OpenCms Experts                                   =
                =20
http://www.alkacon.com - http://www.opencms.org                          =
                               =20



--Apple-Mail=_B4008882-7418-46A2-8B4F-B38E54BD0BCC
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html aria-label=3D"message body"><head><meta http-equiv=3D"content-type" =
content=3D"text/html; charset=3Dus-ascii"></head><body =
style=3D"overflow-wrap: break-word; -webkit-nbsp-mode: space; =
line-break: after-white-space;"><meta http-equiv=3D"content-type" =
content=3D"text/html; charset=3Dus-ascii"><div style=3D"overflow-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: =
after-white-space;"><div><div>Dear OpenCms =
Users,</div><div><br></div><div>OpenCms 22, planned for October 2026, =
will run on Tomcat 11 and Jakarta EE, with a legacy variant so existing =
installations can follow at their own pace.</div><div><br></div><div>If =
you have followed OpenCms development for a while, you may have wondered =
when OpenCms would move to Jakarta. That time has come, and the story of =
why it is now, and not earlier, is mostly a story about =
dependencies.</div><div><br></div><div>Like every mature Java =
application, OpenCms builds on many external libraries. Over the last =
years, more and more of them made the move to Jakarta, but two of the =
biggest did not: Apache Solr, which powers the OpenCms search, and =
Vaadin, the framework behind the Workplace =
UI.</div><div><br></div><div>Vaadin was the harder case of the two. The =
OpenCms Workplace is built on a Vaadin version whose open source line =
ended a few years ago; the final open source releases only support the =
old servlet API, and after the license change we had given up hope for a =
properly converted Jakarta version. Replacing Vaadin entirely would mean =
rewriting large parts of the Workplace, a huge effort that we wanted to =
avoid.</div><div><br></div><div>For a time, waiting was simply the right =
call. If we are honest, we half hoped the namespace split would =
eventually blow over. And Jetty 12 gave us a modern, fully supported =
runtime that can still host javax based applications, so we made it our =
default.</div><div><br></div><div>That picture has changed. With Solr =
10, released this March, the last of our major dependencies besides =
Vaadin completed the switch. And when we took a closer look at today's =
migration tooling, the Vaadin problem turned out to be solvable too: =
using a Gradle plugin that builds on the Apache Tomcat Migration Tool =
for Jakarta EE, we could convert the Vaadin dependencies to the new =
namespace automatically. With that, the Workplace keeps running on =
modern servlet containers without a rewrite. =46rom there, the rest of =
the migration was manageable work. In fact, the biggest part is already =
behind us: the opencms-core sources have been converted, active =
development is now Jakarta based, and everything runs as =
expected.</div><div><br></div><div>How the two release variants work, =
what changes for developers, and the upgrade path towards OpenCms 22 and =
23 are covered in the full article on =
opencms.org:</div><div><br></div><div>https://www.opencms.org/en/article/O=
penCms-goes-Jakarta</div></div><div><br></div></div><div>Kind =
regards,<br>Alex.<br><br>-------------------<br>Alexander =
Kandzior<br><br>Alkacon Software - =
The&nbsp;OpenCms&nbsp;Experts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>http://www.alkacon.com =
-&nbsp;http://www.opencms.org&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb=
sp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp=
;&nbsp;<br><br>
</div>
<br></body></html>=

--Apple-Mail=_B4008882-7418-46A2-8B4F-B38E54BD0BCC--

--===============7224685435610355588==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVGhpcyBtYWls
IGlzIHNlbnQgdG8geW91IGZyb20gdGhlIG9wZW5jbXMtZGV2IG1haWxpbmcgbGlzdApUbyBjaGFu
Z2UgeW91ciBsaXN0IG9wdGlvbnMsIG9yIHRvIHVuc3Vic2NyaWJlIGZyb20gdGhlIGxpc3QsIHBs
ZWFzZSB2aXNpdApodHRwczovL2xpc3RzLm9wZW5jbXMub3JnL21haWxtYW4vbGlzdGluZm8vb3Bl
bmNtcy1kZXYKCgoK

--===============7224685435610355588==--