Pasos de migración para IPF-2023.2.0
Actualizaciones de versión
Nueva Migración del Modelo de Datos IPF
| Deberá migrar al nuevo modelo de datos antes de actualizar al nuevo BOM. Estaremos descontinuando y eliminando los tipos antiguos en las versiones posteriores. Los detalles se pueden encontrar en la documentación para desarrolladores de IPF.- Migrando desde el modelo de datos heredado |
Para migrar de 2023.1.0, por favor realice los siguientes pasos:
-
Actualice su versión de BOM a la nueva versión de lanzamiento.
2023.2.0:
<parent>
<groupId>com.iconsolutions.ipf</groupId>
<artifactId>ipf-release-core-bom</artifactId>
<version>2023.2.0</version>
</parent>
-
Actualice todas las versiones de flo dentro de las carpetas de dominio a
1.36.101. Específicamente, en los módulos "docs", "domain", "external-libraries", "mps", "sampleapp" y "test", actualice para que se vea como:
<parent>
<groupId>com.iconsolutions.ipf.core.flow</groupId>
<artifactId>flo-starter-<modulename></artifactId>
<version>1.36.101</version>
<relativePath></relativePath>
</parent>
-
Ejecute un Maven construya para recuperar todas las últimas dependencias.
Actualizaciones de Código
Arranque de la Aplicación
Al iniciar su IPF application sin nodos semilla o Cluster Bootstrap configurados, puede obtener esta excepción:
java.lang. IllegalArgumentException: No default service discovery implementation configured in `akka.discovery.method`. Make sure to configure this setting to your preferred implementation such as 'akka-dns' in your application.conf (from the akka-discovery module).
Para remediar esto, especifique un método de descubrimiento de servicios como Kubernetes, o-si esta aplicación no requiere agrupamiento-especifique este bloque:
akka {
cluster.seed-nodes = ["akka://"${actor-system-name}"@0.0.0.0:"${akka.remote.artery.canonical.port}]
remote.artery {
canonical.port = 55001
canonical.hostname = 0.0.0.0
bind.hostname = 0.0.0.0
bind.port = 55001
}
}
El bloque anterior configurará un nodo semilla con una dirección específica, lo que deshabilitará el arranque del clúster.
| No utilice el bloque anterior para distribuido Akka clusters. Esto creará un cerebro dividido. Utilice el Descubrimiento de Servicios con Kubernetes en su lugar. |
Serialización
Cualquier uso de Serialization Helper. Custom Module ha sido trasladado y renombrado. Esto se actualizará automáticamente al utilizar la clase SerializationHelper, pero no se actualizará si se utiliza en otros lugares, como la configuración de serialización de akka.
Si tiene algo como esto en su configuración:
akka.serialization.jackson {
jackson-modules += "com.iconsolutions.ipf.core.shared.api.serializer. SerializationHelper$CustomModule"
}
ahora debe ser reemplazado por:
akka.serialization.jackson {
jackson-modules += "com.iconsolutions.ipf.core.shared.api.serializer.module. UntypedObjectDeserializationModule"
}
| Si utiliza el ipf-common-starter-core módulo, que viene como una dependencia transitiva con el ipf-write-starter El módulo mongo se ha añadido ahora por defecto, por lo que no necesita configurarlo manualmente como se indicó anteriormente. |