ipf icon indicating copy to clipboard operation
ipf copied to clipboard

Support Jakarta EE 10 including major dependency updates (spring boot 3.3, camel 4.4, CXF 4.1)

Open Thopap opened this issue 2 years ago • 12 comments

As part of this issue, IPF will be updated to the Jakarta EE 10, which also require certain other major dependency updates.

  • Migrate from javax -> jakarta (JEE 10)
  • Java 17 as minimum
  • Spring Framework 6
  • Spring Boot 3
  • CXF 4.1 (waiting for https://issues.apache.org/jira/browse/CXF-8671)
  • Camel 4.4 (planned for may 2023: https://camel.apache.org/blog/2023/01/camel4roadmap/ )
  • Tomcat 10
  • HerasAF 3.0.2 (https://github.com/prolutionsGmbH/herasaf-xacml-core/issues/13)
  • Hapi FHIR 7.x (https://github.com/hapifhir/hapi-fhir/issues/2082)

Thopap avatar Apr 22 '23 12:04 Thopap

There is a blocker so far as hapi-fhir is still on javax-based JEE version. There is increasingly interest documented in https://github.com/hapifhir/hapi-fhir/issues/2082. There is a survey on https://forms.gle/tMybKV9VrGRaTsrf9, end of 2023 could be a delivery date for Jakarta EE support

ohr avatar May 14 '23 16:05 ohr

Another issue is HL7v3 request/response translation from IHE Gazelle JAXB models (net.ihe.gazelle:hl7v3-code-jar and its transitive dependencies) that are also annotated with the old XmlBind annotations. Same is true for herasaf-xacml-core

ohr avatar May 23 '23 14:05 ohr

For heras-xacml-core a new version 3.0.2 with J2EE 10 Jaxb compatiblity is now available.

Thopap avatar Jul 14 '23 14:07 Thopap

Hi @Thopap, We are using IPF's latest version i.e., 4.7.0. We wanted to upgrade our projects to spring 6 but due to incompatibility with IPF modules we could not do it. I could see there are couple of mile stones. Is there any timeline that we have for the release of IPF 5.0 ?

kiranam786 avatar Aug 10 '23 06:08 kiranam786

We mainly depend on https://github.com/hapifhir/hapi-fhir/issues/2082 to be fixed, which seems to be targeted towards November 2023. Camel 4.0 should have a release, too, but this can be expected soon.

Some HL7v3 model library is also stuck on javax, but I don't expect this to change anytime soon; so I would rather remove this library.

ohr avatar Aug 10 '23 10:08 ohr

Some HL7v3 model library is also stuck on javax, but I don't expect this to change anytime soon; so I would rather remove this library.

Are you referring to the gazelle library? If this library is removed, does this also affect ITIs, such as ITI-44,ITI-45 which are based on it? Will they also be removed from ipf?

cyrillzadra avatar Aug 29 '23 13:08 cyrillzadra

@cyrillzadra No worries, this library is not essential for HL7v3 components. Moreover, we need these components by ourselves and would not remove them :-)

unixoid avatar Aug 29 '23 14:08 unixoid

For info, HAPI FHIR has completed the migration to Jakarta:

HAPI FHIR 6.11.5-SNAPSHOT and later are using the new Jakarta APIs. This will be released as HAPI FHIR 7.0.0 in Feb 2024.

CXF 4.1 is then the last blocker?

qligier avatar Dec 12 '23 17:12 qligier

HAPI FHIR has merged back the migration into its develop build, but there are no tags yet we could consume. I keep the feature/414-jee10 branch updated with all the other stuff, but I have left all FHIR libraries disabled there.

Regarding Gazelle HL7v3 model library (hl7v3-code): this library and its dependencies don't come with any licensing information, so we have to remove it from the IPF distribution. A license is a grant of rights. No license - no rights to use.

ohr avatar Dec 13 '23 08:12 ohr

Still waiting for https://issues.apache.org/jira/browse/CXF-8671

ohr avatar Feb 28 '24 08:02 ohr