diff --git a/dmp-backend/core/src/main/java/eu/eudat/service/transformer/FileTransformerService.java b/dmp-backend/core/src/main/java/eu/eudat/service/transformer/FileTransformerService.java index e7a8bd2b0..a70090103 100644 --- a/dmp-backend/core/src/main/java/eu/eudat/service/transformer/FileTransformerService.java +++ b/dmp-backend/core/src/main/java/eu/eudat/service/transformer/FileTransformerService.java @@ -110,13 +110,21 @@ public class FileTransformerService { //GK: So much for lazy loading List repositories = transformerProperties.getSources().stream().map(depositSource -> getRepository(depositSource.getCodes().get(0))).toList(); + repositories = new ArrayList<>(repositories); + List toDelete = new ArrayList<>(); repositories.forEach((client) -> { - FileTransformerConfiguration repositoryConfigs = client.getConfiguration(); - if (repositoryConfigs != null && !repositoryConfigs.getExportVariants().isEmpty()) { - configurations.addAll(repositoryConfigs.getExportVariants()); + try { + FileTransformerConfiguration repositoryConfigs = client.getConfiguration(); + if (repositoryConfigs != null && !repositoryConfigs.getExportVariants().isEmpty()) { + configurations.addAll(repositoryConfigs.getExportVariants()); + } + } catch (Exception e) { + toDelete.add(client); } }); + repositories.removeAll(toDelete); + configs = new TransformerCacheModel(configurations); this.fileTransformerConfigurationCache.put("base", configs); }