List of usage examples for org.springframework.core.serializer.support SerializationFailedException SerializationFailedException
public SerializationFailedException(String message, Throwable cause)
From source file:grails.plugin.cache.web.filter.redis.GrailsDeserializingConverter.java
public Object convert(byte[] source) { try {/* w ww . ja va 2 s . c o m*/ return deserializer.deserialize(new ByteArrayInputStream(source)); } catch (Throwable t) { throw new SerializationFailedException("Failed to deserialize payload. " + "Is the byte array a result of corresponding serialization for " + deserializer.getClass().getSimpleName() + "?", t); } }
From source file:grails.plugin.cache.web.filter.redis.GrailsSerializingConverter.java
/** * Serializes the source object and returns the byte array result. *///from w w w . j av a 2s . c o m public byte[] convert(Object source) { try { ByteArrayOutputStream baos = new ByteArrayOutputStream(128); serializer.serialize(source, baos); return baos.toByteArray(); } catch (Throwable t) { throw new SerializationFailedException( "Failed to serialize object using " + serializer.getClass().getSimpleName(), t); } }
From source file:com.flipkart.aesop.serializer.serializers.UserPreferencesInfoSerializer.java
/** * Deserializes a UserPreferencesInfo instance from the specified NFDeserializationRecord * @see com.netflix.zeno.serializer.NFTypeSerializer#doDeserialize(com.netflix.zeno.serializer.NFDeserializationRecord) *///from w w w. ja v a2 s .co m protected UserPreferencesInfo doDeserialize(NFDeserializationRecord record) { String id = deserializePrimitiveString(record, "id"); String preferences_name = deserializePrimitiveString(record, "preferences_name"); Map<String, String> valueAsStringMap = deserializeObject(record, "value"); Map<String, Object> value = new HashMap<String, Object>(); Iterator<String> iterator = valueAsStringMap.keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); try { value.put(key, objectMapper.readValue(valueAsStringMap.get(key), Object.class)); } catch (Exception e) { throw new SerializationFailedException( "Serialization failed for userPreferencesInfo.getValue().get(key). Error is : " + e.getMessage(), e); } } int version = deserializeInteger(record, "version"); String last_modified = deserializePrimitiveString(record, "last_modified"); return new UserPreferencesInfo(id, preferences_name, value, version, last_modified); }
From source file:com.flipkart.aesop.serializer.serializers.UserPreferencesInfoSerializer.java
/** * Serializes the specified UserPreferencesInfo object into the specified NFSerializationRecord * @see com.netflix.zeno.serializer.NFTypeSerializer#doSerialize(java.lang.Object, com.netflix.zeno.serializer.NFSerializationRecord) *//*from ww w . ja v a2 s .c o m*/ public void doSerialize(UserPreferencesInfo userPreferencesInfo, NFSerializationRecord record) { serializePrimitive(record, "id", userPreferencesInfo.getId()); serializePrimitive(record, "preferences_name", userPreferencesInfo.getPreferences_name()); if (userPreferencesInfo.getValue() != null) { Map<String, String> valueAsStringMap = new HashMap<String, String>(); Iterator<String> iterator = userPreferencesInfo.getValue().keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); try { valueAsStringMap.put(key, objectMapper.writer().writeValueAsString(userPreferencesInfo.getValue().get(key))); } catch (Exception e) { throw new SerializationFailedException( "Serialization failed for userPreferencesInfo.getValue().get(key). Error is : " + e.getMessage(), e); } } serializeObject(record, "value", valueAsStringMap); } serializePrimitive(record, "version", userPreferencesInfo.getVersion()); serializePrimitive(record, "last_modified", userPreferencesInfo.getLast_modified()); }
From source file:com.flipkart.aesop.serializer.serializers.UserAddressInfoSerializer.java
/** * Serializes the specified UserAddressInfo object into the specified NFSerializationRecord * @see com.netflix.zeno.serializer.NFTypeSerializer#doSerialize(java.lang.Object, com.netflix.zeno.serializer.NFSerializationRecord) */// www . j av a 2 s . c o m public void doSerialize(UserAddressInfo userAddressInfo, NFSerializationRecord record) { serializePrimitive(record, "id", userAddressInfo.getId()); serializePrimitive(record, "account_id", userAddressInfo.getAccount_id()); serializeObject(record, "preferences", userAddressInfo.getPreferences()); serializePrimitive(record, "first_name", userAddressInfo.getFirst_name()); serializePrimitive(record, "last_name", userAddressInfo.getLast_name()); serializePrimitive(record, "address_line1", userAddressInfo.getAddress_line1()); serializePrimitive(record, "address_line2", userAddressInfo.getAddress_line2()); serializePrimitive(record, "landmark", userAddressInfo.getLandmark()); serializePrimitive(record, "city", userAddressInfo.getCity()); serializePrimitive(record, "state", userAddressInfo.getState()); serializePrimitive(record, "state_code", userAddressInfo.getState_code()); serializePrimitive(record, "country", userAddressInfo.getCountry()); serializePrimitive(record, "pincode", userAddressInfo.getPincode()); serializePrimitive(record, "phone", userAddressInfo.getPhone()); serializePrimitive(record, "guest", userAddressInfo.isGuest()); serializePrimitive(record, "active", userAddressInfo.isActive()); serializePrimitive(record, "version", userAddressInfo.getVersion()); serializePrimitive(record, "creation_date", userAddressInfo.getCreation_date()); serializePrimitive(record, "last_modified", userAddressInfo.getLast_modified()); serializePrimitive(record, "creating_system", userAddressInfo.getCreating_system()); if (userAddressInfo.getPreferences() != null) { Map<String, String> preferencesAsStringMap = new HashMap<String, String>(); Iterator<String> iterator = userAddressInfo.getPreferences().keySet().iterator(); while (iterator.hasNext()) { String key = iterator.next(); try { preferencesAsStringMap.put(key, objectMapper.writer().writeValueAsString(userAddressInfo.getPreferences().get(key))); } catch (Exception e) { throw new SerializationFailedException( "Serialization failed for userAddressInfo.getPreferences().get(key). Error is : " + e.getMessage(), e); } } serializeObject(record, "preferences", preferencesAsStringMap); } }
From source file:com.flipkart.aesop.relay.sample.PersonDiffChangeEventMapper.java
/** * Interface method implementation. Returns a List of {@link Person} instances derived from data contained in the specified {@link TypeDiff} containing * diff information on {@link UserInfo} objects * @see com.flipkart.aesop.serializer.stateengine.DiffChangeEventMapper#getChangeEvents(com.netflix.zeno.diff.TypeDiff) *///from ww w .j av a 2 s .c o m public List<Person> getChangeEvents(TypeDiff<UserInfo> typeDiff, SerializerFactory serializerFactory) { List<Person> personsList = new LinkedList<Person>(); GenericObjectSerializationFramework genericObjectFramework = new GenericObjectSerializationFramework( serializerFactory); for (ObjectDiffScore<UserInfo> objectDiff : typeDiff.getDiffObjects()) { GenericObject fromGenericObject = genericObjectFramework.serialize(objectDiff.getFrom(), this.getNFTypeName()); GenericObject toGenericObject = genericObjectFramework.serialize(objectDiff.getTo(), this.getNFTypeName()); List<FieldChange> fieldChanges = new LinkedList<FieldChange>(); for (int i = 0; i < fromGenericObject.getFields().size(); i++) { Field fromField = fromGenericObject.getFields().get(i); Field toField = toGenericObject.getFields().get(i); if (fromField.getValue() == null && toField.getValue() == null) { continue; } try { if ((fromField.getValue() == null && toField.getValue() != null) || (toField.getValue() == null && fromField.getValue() != null) || (!fromField.getValue().equals(toField.getValue()))) { // serialize data as JSON if field names are : preferences, addresses or merged_account_ids String fieldFromValue = null; String fieldToValue = null; if (fromField.getFieldName().equals("preferences")) { if (fromField.getValue() != null && toField.getValue() != null) { fieldFromValue = objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getPreferences()); fieldToValue = objectMapper.writer() .writeValueAsString(objectDiff.getTo().getPreferences()); if (fieldFromValue.equals(fieldToValue)) { continue; } } else { fieldFromValue = fromField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getPreferences()); fieldToValue = toField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getTo().getPreferences()); } } else if (fromField.getFieldName().equals("addresses")) { if (fromField.getValue() != null && toField.getValue() != null) { fieldFromValue = objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getAddresses()); fieldToValue = objectMapper.writer() .writeValueAsString(objectDiff.getTo().getAddresses()); if (fieldFromValue.equals(fieldToValue)) { continue; } } else { fieldFromValue = fromField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getAddresses()); fieldToValue = toField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getTo().getAddresses()); } } else if (fromField.getFieldName().equals("merged_account_ids")) { if (fromField.getValue() != null && toField.getValue() != null) { fieldFromValue = objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getMerged_account_ids()); fieldToValue = objectMapper.writer() .writeValueAsString(objectDiff.getTo().getMerged_account_ids()); if (fieldFromValue.equals(fieldToValue)) { continue; } } else { fieldFromValue = fromField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getFrom().getMerged_account_ids()); fieldToValue = toField.getValue() == null ? "null" : objectMapper.writer() .writeValueAsString(objectDiff.getTo().getMerged_account_ids()); } } else { fieldFromValue = fromField.getValue() == null ? "null" : fromField.getValue().toString(); fieldToValue = toField.getValue() == null ? "null" : toField.getValue().toString(); } fieldChanges.add(new FieldChange(fromField.getFieldName(), fieldFromValue, fieldToValue)); } } catch (Exception e) { throw new SerializationFailedException( "Error interpreting change from diff : " + e.getMessage(), e); } } personsList.add(new Person( Long.valueOf(!NumberUtils.isNumber(objectDiff.getFrom().getPrimary_phone()) ? "0" : objectDiff.getFrom().getPrimary_phone().trim()), objectDiff.getFrom().getFirst_name(), objectDiff.getFrom().getLast_name(), 0L, "false", fieldChanges)); } return personsList; }
From source file:org.springframework.cloud.stream.binder.AbstractBinder.java
protected final byte[] serializePayloadIfNecessary(Object originalPayload) { if (originalPayload instanceof byte[]) { return (byte[]) originalPayload; } else {//from ww w . ja v a 2 s .c o m ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { if (originalPayload instanceof String) { return ((String) originalPayload).getBytes("UTF-8"); } this.codec.encode(originalPayload, bos); return bos.toByteArray(); } catch (IOException e) { throw new SerializationFailedException( "unable to serialize payload [" + originalPayload.getClass().getName() + "]", e); } } }
From source file:org.springframework.cloud.stream.binder.AbstractBinder.java
private Object deserializePayload(byte[] bytes, MimeType contentType) { if ("text".equalsIgnoreCase(contentType.getType()) || MimeTypeUtils.APPLICATION_JSON.equals(contentType)) { try {//w w w . j a v a2s . co m return new String(bytes, "UTF-8"); } catch (UnsupportedEncodingException e) { String errorMessage = "unable to deserialize [java.lang.String]. Encoding not supported. " + e.getMessage(); logger.error(errorMessage); throw new SerializationFailedException(errorMessage, e); } } else { String className = JavaClassMimeTypeConversion.classNameFromMimeType(contentType); try { // Cache types to avoid unnecessary ClassUtils.forName calls. Class<?> targetType = this.payloadTypeCache.get(className); if (targetType == null) { targetType = ClassUtils.forName(className, null); this.payloadTypeCache.put(className, targetType); } return this.codec.decode(bytes, targetType); } // catch all exceptions that could occur during de-serialization catch (Exception e) { String errorMessage = "Unable to deserialize [" + className + "] using the contentType [" + contentType + "] " + e.getMessage(); logger.error(errorMessage); throw new SerializationFailedException(errorMessage, e); } } }