IPF 5.0 Migration Guide

IPF 5.0 comes with some changes that should be considered when upgrading from earlier IPF versions.

Overall changes

IPF 5.x requires Java 17 and buids upon Jakarta EE 10. This primarily means moving from javax.* to jakarta.* packages, including upgrades of almost all relevant dependencies. Therefore, expect considerable migration effort.

Migration instructions for individual libraries include:

Changes in ATNA audit builder classes

The generic builder classes PatientRecordEventEventBuilder, PHIExportBuider, PHIImportBuilder, and QueryInformationBuilder have been made abstract. Concrete implementation classes are available prefixed with Default.

Changes in ATNA audit dataset enrichment

Older IPF versions contained the module ipf-commons-ihe-xua which provided routines to propagate particular elements of XUA authorization assertions into ATNA audit datasets. In IPF 5.0, this module is not present anymore. Instead, a concept of an “audit dataset enricher” is introduced for Web Service based and FHIR based transactions. See here and here for details.

Changes in FHIR Request Consumer

org.openehealth.ipf.commons.ihe.fhir.RequestConsumer’s handleXXX methods have an additional Map parameter to be able to set response HTTP headers. WHen in doubt, pass in a new HasMap().

HL7v3 models

HL7v3 models have been upgraded to the Jakarta XML Bind namespace and moved to the ìpf-commons-ihe-hl7v3model module.

Removal of deprecated classes and methods

As this is a major release, expect deprecated classes and methods to be removed