From 20ecfcf664882ebb7575541ea4ae2f05b7971e8c Mon Sep 17 00:00:00 2001 From: evan-miller-jumpmind <70151986+evan-miller-jumpmind@users.noreply.github.com> Date: Fri, 6 Oct 2023 09:29:22 -0400 Subject: [PATCH] 0006006: Prevented node from starting up if the sync.url is invalid --- .../jumpmind/symmetric/AbstractSymmetricEngine.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/AbstractSymmetricEngine.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/AbstractSymmetricEngine.java index c33f9d5195..41dd2280d9 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/AbstractSymmetricEngine.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/AbstractSymmetricEngine.java @@ -27,6 +27,7 @@ import java.lang.reflect.Constructor; import java.lang.reflect.Method; import java.net.MalformedURLException; +import java.net.URISyntaxException; import java.net.URL; import java.security.UnrecoverableKeyException; import java.sql.SQLException; @@ -996,7 +997,14 @@ public boolean isConfigured() { log.debug("The current version of {} is newer than the last running version of {}", Version.version(), node.getSymmetricVersion()); } - configurationValid = true; + try { + new URL(parameterService.getSyncUrl()).toURI(); + } catch (MalformedURLException e) { + errorMessage = String.format("The %s property is not a valid URL: %s", ParameterConstants.SYNC_URL, parameterService.getSyncUrl()); + } catch (URISyntaxException e) { + errorMessage = String.format("The %s property is not a valid URI: %s", ParameterConstants.SYNC_URL, parameterService.getSyncUrl()); + } + configurationValid = (errorMessage == null); } if (errorMessage != null) { log.error(errorMessage);