Do not include property values in error messages
diff --git a/src/main/java/org/eclipse/yasson/internal/properties/MessageKeys.java b/src/main/java/org/eclipse/yasson/internal/properties/MessageKeys.java
index fdd3793..95fb57e 100644
--- a/src/main/java/org/eclipse/yasson/internal/properties/MessageKeys.java
+++ b/src/main/java/org/eclipse/yasson/internal/properties/MessageKeys.java
@@ -68,7 +68,6 @@
     INCOMPATIBLE_FACTORY_CREATOR_RETURN_TYPE("incompatibleFactoryCreatorReturnType"),
     MULTIPLE_JSONB_CREATORS("multipleJsonbCreators"),
     INTERNAL_ERROR("internalError"),
-    SERIALIZE_VALUE_ERROR("serializeValueError"),
     SERIALIZE_PROPERTY_ERROR("serializePropertyError"),
     DESERIALIZE_VALUE_ERROR("deserializeValueError"),
     PARSING_NUMBER("parsingNumber"),
diff --git a/src/main/java/org/eclipse/yasson/internal/serializer/AbstractValueTypeSerializer.java b/src/main/java/org/eclipse/yasson/internal/serializer/AbstractValueTypeSerializer.java
index 721a1a6..ab81280 100644
--- a/src/main/java/org/eclipse/yasson/internal/serializer/AbstractValueTypeSerializer.java
+++ b/src/main/java/org/eclipse/yasson/internal/serializer/AbstractValueTypeSerializer.java
@@ -15,10 +15,7 @@
 
 import org.eclipse.yasson.internal.Marshaller;
 import org.eclipse.yasson.internal.model.customization.Customization;
-import org.eclipse.yasson.internal.properties.MessageKeys;
-import org.eclipse.yasson.internal.properties.Messages;
 
-import javax.json.bind.JsonbException;
 import javax.json.bind.serializer.JsonbSerializer;
 import javax.json.bind.serializer.SerializationContext;
 import javax.json.stream.JsonGenerator;
@@ -51,12 +48,7 @@
     @Override
     public void serialize(T obj, JsonGenerator generator, SerializationContext ctx) {
         Marshaller marshaller = (Marshaller) ctx;
-        try {
-        	serialize(obj, generator, marshaller);
-        } catch (Exception e) {
-    		throw new JsonbException(Messages.getMessage(MessageKeys.SERIALIZE_VALUE_ERROR, 
-    				obj, obj.getClass().getCanonicalName(), e.getMessage()));
-        }
+        serialize(obj, generator, marshaller);
     }
 
     protected abstract void serialize(T obj, JsonGenerator generator, Marshaller marshaller);
diff --git a/src/main/java/org/eclipse/yasson/internal/serializer/ObjectSerializer.java b/src/main/java/org/eclipse/yasson/internal/serializer/ObjectSerializer.java
index f791645..7ab0f6a 100644
--- a/src/main/java/org/eclipse/yasson/internal/serializer/ObjectSerializer.java
+++ b/src/main/java/org/eclipse/yasson/internal/serializer/ObjectSerializer.java
@@ -59,14 +59,15 @@
 
     @Override
     protected void serializeInternal(T object, JsonGenerator generator, SerializationContext ctx) {
-        final PropertyModel[] allProperties = ((Marshaller) ctx).getMappingContext().getOrCreateClassModel(object.getClass()).getSortedProperties();
+        final PropertyModel[] allProperties = ((Marshaller) ctx).getMappingContext()
+                .getOrCreateClassModel(object.getClass()).getSortedProperties();
         for (PropertyModel model : allProperties) {
-        	try {
-        		marshallProperty(object, generator, ctx, model);
-        	} catch (Exception e) {
-        		throw new JsonbException(Messages.getMessage(MessageKeys.SERIALIZE_PROPERTY_ERROR, 
-        				model.getWriteName(), object.getClass().getCanonicalName(), model.getValue(object)), e);
-        	}
+            try {
+                marshallProperty(object, generator, ctx, model);
+            } catch (Exception e) {
+                throw new JsonbException(Messages.getMessage(MessageKeys.SERIALIZE_PROPERTY_ERROR, model.getWriteName(),
+                        object.getClass().getCanonicalName()), e);
+            }
         }
     }
 
diff --git a/src/main/resources/yasson-messages.properties b/src/main/resources/yasson-messages.properties
index 55c2b78..b0efc2b 100644
--- a/src/main/resources/yasson-messages.properties
+++ b/src/main/resources/yasson-messages.properties
@@ -63,8 +63,7 @@
 incompatibleFactoryCreatorReturnType=Return type of creator {0} must be of type {1}.
 multipleJsonbCreators=More than one @JsonbCreator declared in class {0}.
 internalError=Internal error: {0}
-serializeValueError=Unable to serialize value ''{0}'' of type {1} because of: {2}
-serializePropertyError=Unable to serialize property ''{0}'' from {1} with value ''{2}''
+serializePropertyError=Unable to serialize property ''{0}'' from {1}
 deserializeValueError=Error deserialize JSON value into type: {0}.
 parsingNumber=Error parsing number {0} with format {1}.
 unknownBinaryDataStrategy=Unknown binary data strategy: {0}
diff --git a/src/test/java/org/eclipse/yasson/Assertions.java b/src/test/java/org/eclipse/yasson/Assertions.java
index c1b19e2..509ba75 100644
--- a/src/test/java/org/eclipse/yasson/Assertions.java
+++ b/src/test/java/org/eclipse/yasson/Assertions.java
@@ -46,9 +46,10 @@
 			operation.get();
 			fail("The operation should have failed with a " + expectedType.getCanonicalName() + " but it succeeded.");
 		} catch (Throwable t) {
-			String fullErrorMessage = t.getMessage();
-			for (Throwable current = t; current.getCause() != null && current.getCause() != current; current = current.getCause()) {
-				fullErrorMessage += current.getMessage();
+			String fullErrorMessage = "";
+			for (Throwable current = t; current != null && current.getCause() != current; current = current.getCause()) {
+			    fullErrorMessage += current.getClass().getCanonicalName() + ": ";
+				fullErrorMessage += current.getMessage() + "\n";
 			}
 			if (expectedType.isAssignableFrom(t.getClass())) {
 				if (!checkExceptionMessage.apply(fullErrorMessage)) {
diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/basic/NumberTest.java b/src/test/java/org/eclipse/yasson/defaultmapping/basic/NumberTest.java
index 8dfa547..16d5e5d 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/basic/NumberTest.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/basic/NumberTest.java
@@ -225,30 +225,28 @@
     
     @Test
     public void testSerializeInvalidDouble() {
-    	shouldFail(() -> jsonb.toJson(Double.POSITIVE_INFINITY), 
-    			msg -> msg.contains("Unable to serialize value") && msg.contains("java.lang.Double"));
-    	
-    	NumberContainer obj = new NumberContainer();
-    	obj.doubleProp = Double.POSITIVE_INFINITY;
-    	shouldFail(() -> jsonb.toJson(obj),
-    			msg -> msg.contains("doubleProp") && msg.contains("NumberContainer"));
+        shouldFail(() -> jsonb.toJson(Double.POSITIVE_INFINITY));
+
+        NumberContainer obj = new NumberContainer();
+        obj.doubleProp = Double.POSITIVE_INFINITY;
+        shouldFail(() -> jsonb.toJson(obj), msg -> msg.contains("doubleProp") && msg.contains("NumberContainer"));
     }
     
     
     @Test
     public void testSerializeInvalidDoubleCollection() {
-    	NumberContainer obj = new NumberContainer();
-    	obj.collectionProp = Collections.singleton(Double.POSITIVE_INFINITY);
-    	shouldFail(() -> jsonb.toJson(obj),
-    			msg -> msg.contains("collectionProp") && msg.contains("NumberContainer") && msg.contains("Infinity"));
+        NumberContainer obj = new NumberContainer();
+        obj.collectionProp = Collections.singleton(Double.POSITIVE_INFINITY);
+        shouldFail(() -> jsonb.toJson(obj),
+                msg -> msg.contains("collectionProp") && msg.contains("NumberContainer"));
     }
-    
+
     @Test
     public void testSerializeInvalidDoubleMap() {
-    	NumberContainer obj = new NumberContainer();
-    	obj.mapProp = Collections.singletonMap("doubleKey", Double.POSITIVE_INFINITY);
-    	shouldFail(() -> jsonb.toJson(obj),
-    			msg -> msg.contains("mapProp") && msg.contains("NumberContainer") && msg.contains("Infinity"));
+        NumberContainer obj = new NumberContainer();
+        obj.mapProp = Collections.singletonMap("doubleKey", Double.POSITIVE_INFINITY);
+        shouldFail(() -> jsonb.toJson(obj),
+                msg -> msg.contains("mapProp") && msg.contains("NumberContainer"));
     }
 
 }
diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/modifiers/ClassModifiersTest.java b/src/test/java/org/eclipse/yasson/defaultmapping/modifiers/ClassModifiersTest.java
index bf2a7b4..8bb67eb 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/modifiers/ClassModifiersTest.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/modifiers/ClassModifiersTest.java
@@ -17,6 +17,7 @@
 import javax.json.bind.JsonbBuilder;
 import javax.json.bind.JsonbException;
 
+import org.eclipse.yasson.Assertions;
 import org.eclipse.yasson.defaultmapping.modifiers.model.ChildOfPackagePrivateParent;
 import org.eclipse.yasson.defaultmapping.modifiers.model.FieldModifiersClass;
 import org.junit.Before;
@@ -67,14 +68,9 @@
         NestedPackageChild child = new NestedPackageChild();
         child.id = 1;
         child.name = "SomeName";
-        try {
-            jsonb.toJson(child);
-            fail();
-        } catch (JsonbException ex) {
-            if (!(ex.getCause() instanceof IllegalAccessException)) {
-                fail();
-            }
-        }
+        Assertions.shouldFail(() -> jsonb.toJson(child),
+                msg -> msg.contains("Unable to serialize property 'id'") &&
+                msg.contains("java.lang.IllegalAccessException")); 
     }
 
     private class NestedPrivateParent {
@@ -90,14 +86,8 @@
         NestedPrivateChild child = new NestedPrivateChild();
         child.id = 1;
         child.name = "SomeName";
-        try {
-            jsonb.toJson(child);
-            fail();
-        } catch (JsonbException ex) {
-            if (!(ex.getCause() instanceof IllegalAccessException)) {
-                fail();
-            }
-        }
+        Assertions.shouldFail(() -> jsonb.toJson(child),
+                msg -> msg.contains("java.lang.IllegalAccessException"));
     }
 
 
@@ -114,14 +104,8 @@
         NestedStaticPackageChild child = new NestedStaticPackageChild();
         child.id = 1;
         child.name = "SomeName";
-        try {
-            jsonb.toJson(child);
-            fail();
-        } catch (JsonbException ex) {
-            if (!(ex.getCause() instanceof IllegalAccessException)) {
-                fail();
-            }
-        }
+        Assertions.shouldFail(() -> jsonb.toJson(child),
+                msg -> msg.contains("java.lang.IllegalAccessException"));
     }
 
     private static class NestedStaticPrivateParent {
@@ -137,14 +121,8 @@
         NestedStaticPrivateChild child = new NestedStaticPrivateChild();
         child.id = 1;
         child.name = "SomeName";
-        try {
-            jsonb.toJson(child);
-            fail();
-        } catch (JsonbException ex) {
-            if (!(ex.getCause() instanceof IllegalAccessException)) {
-                fail();
-            }
-        }
+        Assertions.shouldFail(() -> jsonb.toJson(child),
+                msg -> msg.contains("java.lang.IllegalAccessException"));
     }
 
 }