diff --git a/src/main/java/org/onosproject/segmentrouting/config/PwaasConfig.java b/src/main/java/org/onosproject/segmentrouting/config/PwaasConfig.java
index ed2c067..f9ab36c 100644
--- a/src/main/java/org/onosproject/segmentrouting/config/PwaasConfig.java
+++ b/src/main/java/org/onosproject/segmentrouting/config/PwaasConfig.java
@@ -122,13 +122,13 @@
                     .map(this::getPwDescription)
                     .collect(Collectors.toSet());
 
+            // check semantics now and return
+            return configurationValidity(pseudowires);
+
         } catch (IllegalArgumentException e) {
             log.warn("{}", e.getMessage());
             return false;
         }
-
-        // check semantics now and return
-        return configurationValidity(pseudowires);
     }
 
     /**
@@ -656,10 +656,9 @@
         newPw.put(MODE, mode);
 
         object.set(tunnelId, newPw);
-        try {
-            isValid();
-        } catch (IllegalArgumentException e) {
-            log.info("Pseudowire could not be created : {}", e);
+
+        if (!isValid()) {
+            log.info("Pseudowire could not be created : {}");
             object.remove(tunnelId);
             return null;
         }
diff --git a/src/test/java/org/onosproject/segmentrouting/PwaasConfigTest.java b/src/test/java/org/onosproject/segmentrouting/PwaasConfigTest.java
index 7686242..60163eb 100644
--- a/src/test/java/org/onosproject/segmentrouting/PwaasConfigTest.java
+++ b/src/test/java/org/onosproject/segmentrouting/PwaasConfigTest.java
@@ -303,9 +303,9 @@
         assertFalse(invalidConfigLabel.isValid());
     }
 
-    @Test(expected = IllegalArgumentException.class)
+    @Test
     public void testValid4() {
-        invalidConfigConflictingVlan.isValid();
+        assertFalse(invalidConfigConflictingVlan.isValid());
     }
 
     /**
