Details
Description
In some specific cases, component-manager has some issues for loading bundles in containers.
Sample error typical stacktrace:
qtp378098300-96 2024-08-26 16:46:51.957 [endpoint ] [ERROR ] [] An error occurred unloading dataset: HumanResources.Department java.util.MissingResourceException: Can't find bundle for base name org.talend.components.jdbc.service.Messages, locale fr_FR at java.base/java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2055) at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1689) at java.base/java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1593) at java.base/java.util.ResourceBundle.getBundle(ResourceBundle.java:1284) at org.talend.sdk.component.runtime.internationalization.InternationalizationServiceFactory$InternationalizedHandler.lambda$getTemplate$6(InternationalizationServiceFactory.java:167) at java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1705) at org.talend.sdk.component.runtime.internationalization.InternationalizationServiceFactory$InternationalizedHandler.getTemplate(InternationalizationServiceFactory.java:166) at org.talend.sdk.component.runtime.internationalization.InternationalizationServiceFactory$InternationalizedHandler.invoke(InternationalizationServiceFactory.java:119) at com.sun.proxy.$Proxy36.errorDriverLoad(Unknown Source) at jdk.internal.reflect.GeneratedMethodAccessor35.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.talend.sdk.component.runtime.manager.proxy.JavaProxyEnricherFactory$DelegatingSerializableHandler.invoke(JavaProxyEnricherFactory.java:124) at com.sun.proxy.$Proxy37.errorDriverLoad(Unknown Source) at org.talend.components.jdbc.service.JdbcService$JdbcDatasource.<init>(JdbcService.java:185)
This is usually a class loader issue coming from using pure java container management. In those cases, the class loader is likely to be the app one and not the container's one.