Align wording in "Can't map JSON Object" exception with other exceptions
diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/DeserializationExceptionMessagesTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/DeserializationExceptionMessagesTest.java
index c914035..efa6fe7 100644
--- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/DeserializationExceptionMessagesTest.java
+++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/DeserializationExceptionMessagesTest.java
@@ -117,7 +117,7 @@
     public void numberFromObject() throws Exception {
         assertMessage("{ \"number\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'number' of type Integer cannot be mapped to json object value: {\"red\":255,\"green\":1" +
-                        "...\nCan't map JSON Object to class java.lang.Integer: {\"red\":255,\"green\":1...");
+                        "...\nUnable to map json object value to class java.lang.Integer: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -166,7 +166,7 @@
     public void intPrimitiveFromObject() throws Exception {
         assertMessage("{ \"intPrimitive\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'intPrimitive' of type int cannot be mapped to json object value: {\"red\":255,\"green\"" +
-                        ":1...\nCan't map JSON Object to int: {\"red\":255,\"green\":1...");
+                        ":1...\nUnable to map json object value to int: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -336,7 +336,7 @@
     public void enumFromObject() throws Exception {
         assertMessage("{ \"unit\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'unit' of type TimeUnit cannot be mapped to json object value: {\"red\":255,\"green\":1." +
-                        "..\nCan't map JSON Object to class java.lang.String: {\"red\":255,\"green\":1...");
+                        "..\nUnable to map json object value to class java.lang.String: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -394,8 +394,8 @@
     @Test
     public void dateFromObject() throws Exception {
         assertMessage("{ \"date\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
-                "Widget property 'date' of type Date cannot be mapped to json object value: {\"red\":255,\"green\":1...\nC" +
-                        "an't map JSON Object to class java.lang.String: {\"red\":255,\"green\":1...");
+                "Widget property 'date' of type Date cannot be mapped to json object value: {\"red\":255,\"green\":1...\nU" +
+                        "nable to map json object value to class java.lang.String: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -538,7 +538,7 @@
     public void arrayOfStringFromArrayOfObject() throws Exception {
         assertMessage("{ \"arrayOfString\" : [{\"red\": 255, \"green\": 165, \"blue\":0},{\"red\": 0, \"green\": 45, \"blue\":127}] }",
                 "Widget property 'arrayOfString' of type String[] cannot be mapped to json array value: [{\"red\":255,\"" +
-                        "green\":...\nCan't map JSON Object to class java.lang.String: {\"red\":255,\"green\":1...");
+                        "green\":...\nUnable to map json object value to class java.lang.String: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -723,8 +723,8 @@
     public void listOfObjectFromObject() throws Exception {
         assertMessage("{ \"listOfObject\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'listOfObject' of type List<Color> cannot be mapped to json object value: {\"red\":255" +
-                        ",\"green\":1...\nCan't map JSON Object to java.util.List<org.apache.johnzon.jsonb.DeserializationExcept" +
-                        "ionMessagesTest$Color>: {\"red\":255,\"green\":1...");
+                        ",\"green\":1...\nUnable to map json object value to java.util.List<org.apache.johnzon.jsonb.Deserializa" +
+                        "tionExceptionMessagesTest$Color>: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -779,7 +779,8 @@
     public void listOfStringFromObject() throws Exception {
         assertMessage("{ \"listOfString\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'listOfString' of type List<String> cannot be mapped to json object value: {\"red\":25" +
-                        "5,\"green\":1...\nCan't map JSON Object to java.util.List<java.lang.String>: {\"red\":255,\"green\":1...");
+                        "5,\"green\":1...\nUnable to map json object value to java.util.List<java.lang.String>: {\"red\":255,\"gree" +
+                        "n\":1...");
     }
 
     @Test
@@ -809,7 +810,7 @@
     public void listOfStringFromArrayOfObject() throws Exception {
         assertMessage("{ \"listOfString\" : [{\"red\": 255, \"green\": 165, \"blue\":0},{\"red\": 0, \"green\": 45, \"blue\":127}] }",
                 "Widget property 'listOfString' of type List<String> cannot be mapped to json array value: [{\"red\":25" +
-                        "5,\"green\":...\nCan't map JSON Object to class java.lang.String: {\"red\":255,\"green\":1...");
+                        "5,\"green\":...\nUnable to map json object value to class java.lang.String: {\"red\":255,\"green\":1...");
     }
 
     @Test
@@ -830,7 +831,8 @@
     public void listOfNumberFromObject() throws Exception {
         assertMessage("{ \"listOfNumber\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'listOfNumber' of type List<Number> cannot be mapped to json object value: {\"red\":25" +
-                        "5,\"green\":1...\nCan't map JSON Object to java.util.List<java.lang.Number>: {\"red\":255,\"green\":1...");
+                        "5,\"green\":1...\nUnable to map json object value to java.util.List<java.lang.Number>: {\"red\":255,\"gree" +
+                        "n\":1...");
     }
 
     @Test
@@ -882,7 +884,8 @@
     public void listOfBooleanFromObject() throws Exception {
         assertMessage("{ \"listOfBoolean\" : {\"red\": 255, \"green\": 165, \"blue\":0} }",
                 "Widget property 'listOfBoolean' of type List<Boolean> cannot be mapped to json object value: {\"red\":" +
-                        "255,\"green\":1...\nCan't map JSON Object to java.util.List<java.lang.Boolean>: {\"red\":255,\"green\":1...");
+                        "255,\"green\":1...\nUnable to map json object value to java.util.List<java.lang.Boolean>: {\"red\":255,\"g" +
+                        "reen\":1...");
     }
 
     @Test
diff --git a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/SnippetMaxLengthTest.java b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/SnippetMaxLengthTest.java
index 9daab96..93c437e 100644
--- a/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/SnippetMaxLengthTest.java
+++ b/johnzon-jsonb/src/test/java/org/apache/johnzon/jsonb/SnippetMaxLengthTest.java
@@ -40,7 +40,7 @@
         } catch (JsonbException e) {
             assertMessage("Person property 'name' of type String cannot be mapped to json object value: " +
                     "{\"first\":\"Charlie\",\"last\":\"Brown\"}\n" +
-                    "Can't map JSON Object to class java.lang.String: {\"first\":\"Charlie\",\"last\":\"Brown\"}", e.getMessage());
+                    "Unable to map json object value to class java.lang.String: {\"first\":\"Charlie\",\"last\":\"Brown\"}", e.getMessage());
         }
     }
 
@@ -53,7 +53,7 @@
         } catch (JsonbException e) {
             assertMessage("Person property 'name' of type String cannot be mapped to json object value:" +
                     " {\"first\":\"Charlie\",\"last\":\"Brown\",\"age\":\"8.5\",\"dog...\n" +
-                    "Can't map JSON Object to class java.lang.String: {\"first\":\"Charlie\",\"last\":\"Brown\",\"age\":\"8.5\",\"dog...", e.getMessage());
+                    "Unable to map json object value to class java.lang.String: {\"first\":\"Charlie\",\"last\":\"Brown\",\"age\":\"8.5\",\"dog...", e.getMessage());
         }
     }
 
@@ -68,7 +68,7 @@
         } catch (JsonbException e) {
             assertMessage("Person property 'name' of type String cannot be mapped to json object value:" +
                     " {\"first\":\"Charlie\",\"...\n" +
-                    "Can't map JSON Object to class java.lang.String: {\"first\":\"Charlie\",\"...", e.getMessage());
+                    "Unable to map json object value to class java.lang.String: {\"first\":\"Charlie\",\"...", e.getMessage());
         }
     }
 
@@ -91,7 +91,7 @@
         } catch (JsonbException e) {
             assertMessage("Person property 'name' of type String cannot be mapped to json object value:" +
                     " {\"first\":\"Charlie\",\"...\n" +
-                    "Can't map JSON Object to class java.lang.String: {\"first\":\"Charlie\",\"...", e.getMessage());
+                    "Unable to map json object value to class java.lang.String: {\"first\":\"Charlie\",\"...", e.getMessage());
         }
     }
 
diff --git a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java
index 5d11077..0f77e91 100644
--- a/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java
+++ b/johnzon-mapper/src/main/java/org/apache/johnzon/mapper/MappingParserImpl.java
@@ -346,7 +346,9 @@
             }
         }
         if (classMapping == null) {
-            throw new MapperException("Can't map JSON Object to " + type + ": " + config.getSnippet().of(object));
+            final String snippet = config.getSnippet().of(object);
+            final String description = ExceptionMessages.description(object);
+            throw new MapperException("Unable to map " + description + " to " + type + ": " + snippet);
         }
 
         if (applyObjectConverter && classMapping.reader != null && (skippedConverters == null || !skippedConverters.contains(type))) {