From c3548c400e8c505b690acc97cb48b80ba05eb299 Mon Sep 17 00:00:00 2001 From: Barry Nouwt Date: Fri, 23 Jan 2026 13:45:13 +0100 Subject: [PATCH] Catch and print IllegalArgumentException and continue registering. --- .../util/KnowledgeBaseImpl.java | 32 ++++++++++++++----- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/util/KnowledgeBaseImpl.java b/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/util/KnowledgeBaseImpl.java index 3082af34..30725245 100644 --- a/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/util/KnowledgeBaseImpl.java +++ b/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/util/KnowledgeBaseImpl.java @@ -503,26 +503,42 @@ public synchronized void syncKIs() { throw new IllegalStateException("The KB should be started before registering KIs."); for (var ki : this.registeredAskKIs) { - this.getSC().register(ki); - this.currentAskKIs.add(ki); + try { + this.getSC().register(ki); + this.currentAskKIs.add(ki); + } catch (IllegalArgumentException iae) { + LOG.error("Registering KI {} should succeed.", ki, iae); + } } this.registeredAskKIs.clear(); for (var entry : this.registeredAnswerKIs.entrySet()) { - this.getSC().register(entry.getKey(), entry.getValue()); - this.currentAnswerKIs.put(entry.getKey(), entry.getValue()); + try { + this.getSC().register(entry.getKey(), entry.getValue()); + this.currentAnswerKIs.put(entry.getKey(), entry.getValue()); + } catch (IllegalArgumentException iae) { + LOG.error("Registering KI {} should succeed.", entry.getKey(), iae); + } } this.registeredAnswerKIs.clear(); for (var ki : this.registeredPostKIs) { - this.getSC().register(ki); - this.currentPostKIs.add(ki); + try { + this.getSC().register(ki); + this.currentPostKIs.add(ki); + } catch (IllegalArgumentException iae) { + LOG.error("Registering KI {} should succeed.", ki, iae); + } } this.registeredPostKIs.clear(); for (var entry : this.registeredReactKIs.entrySet()) { - this.getSC().register(entry.getKey(), entry.getValue()); - this.currentReactKIs.put(entry.getKey(), entry.getValue()); + try { + this.getSC().register(entry.getKey(), entry.getValue()); + this.currentReactKIs.put(entry.getKey(), entry.getValue()); + } catch (IllegalArgumentException iae) { + LOG.error("Registering KI {} should succeed.", entry.getKey(), iae); + } } this.registeredReactKIs.clear();