Instalación de extensiones personalizadas
A partir de ThingWorx 10.0.0 o versiones posteriores, la plataforma se ejecuta con Apache Tomcat 11, basado en la especificación Jakarta EE 11. A diferencia de las versiones anteriores que soportaban javax.* packages, Tomcat 11 requiere que todas las extensiones y los componentes web utilicen el espacio de nombres de jakarta.*.
Si alguna extensión personalizada de ThingWorx utiliza javax.*, las API ya no funcionarán correctamente en el entorno de ThingWorx 10.0.
En la siguiente tabla se enumeran algunos casos de uso y soluciones.
|
Caso práctico
|
Solución
|
|
La importación e instalación de extensiones personalizadas activa el error NoClassDefFoundError.
|
Actualice la etiqueta context en el fichero Tomcat/conf/context.xml. Para obtener más información, consulte CS439388.
|
|
Actualización desde versiones anteriores (9.4.x, 9.5.x, 9.6.x, 9.7.x) a ThingWorx 10.0
|
Se recomienda recompilar las extensiones y volver a instalarlas en ThingWorx 10.0.
|
|
Se puede ejecutar Javax to JakarteEE Migration Utility para escanear y migrar referencias de javax.* a jakarta.*. Para obtener más información, consulte CS442261.
|
|
Al desarrollar extensiones personalizadas para ThingWorx, solo se deben integrar bibliotecas JavaScript de terceros cuando sea necesario. Antes de incluir una biblioteca en la extensión, verifique si ThingWorx Platform ya proporciona la biblioteca. La inclusión de una versión duplicada o en conflicto puede dar lugar a problemas de compatibilidad, especialmente cuando se utilizan versiones diferentes de la misma biblioteca. Estos conflictos pueden dar lugar a un comportamiento inesperado o a fallos en la aplicación. Para evitar estos problemas, utilice las bibliotecas incluidas con ThingWorx Platform siempre que sea posible. La lista de bibliotecas de JavaScript utilizadas por ThingWorx se puede ver en > del menú
Gestionar de Composer. Para obtener más información, consulte
Importación de extensiones.