HCL Domino V14 HTTP engine is based on javax.servlet and does not support jakarta. imports. This means we will need to stay at the Jersey server 2.x version for it to run on Domino.
However our team is developing a RESTful web service using Jersey server. Ideally, we'd like to upgrade Jersey to its latest version while migrating to Domino 14 and Java 17. However, we've encountered a roadblock.
Currently, the Domino web container relies on the javax package, hindering our ability to upgrade Jersey.
Two key factors drive our desire to upgrade:
Security:
upgrading Jersey ensures access to the latest security patches and mitigations. Security tools like GitHub Security and Dependabot actively monitor for outdated dependencies. We cannot comply if this is not done.
New Features:
beyond security, we'd like to leverage new functionalities offered by the latest Jersey version. This extends to linked dependencies like Jersey Client, Jersey Bridge HK2 to Guice, and Google Guice and other dependencies.
Of course there are other reasons to keep dependencies up to date: bug fixes, performance improvements, improved maintainability and compatibility with newer technologies.
Our assumption was that with Domino 14 HCL was updating the core to Java 17 that everything would get an update, but unfortunately this is not the case for Jersey. There are workarounds (XPages Jakarta EE Support on OpenNTF), but we need HCL to get behind this and support this also.