Fix conversion logic in SmartCompositeMessageConverter
This commit is contained in:
@@ -45,7 +45,7 @@ public class SmartCompositeMessageConverter extends CompositeMessageConverter {
|
|||||||
@Nullable
|
@Nullable
|
||||||
public Object fromMessage(Message<?> message, Class<?> targetClass) {
|
public Object fromMessage(Message<?> message, Class<?> targetClass) {
|
||||||
for (MessageConverter converter : getConverters()) {
|
for (MessageConverter converter : getConverters()) {
|
||||||
if (targetClass.isInstance(message.getPayload()) && !(message.getPayload() instanceof Collection<?>)) {
|
if (!(message.getPayload() instanceof byte[]) && targetClass.isInstance(message.getPayload()) && !(message.getPayload() instanceof Collection<?>)) {
|
||||||
return message.getPayload();
|
return message.getPayload();
|
||||||
}
|
}
|
||||||
Object result = converter.fromMessage(message, targetClass);
|
Object result = converter.fromMessage(message, targetClass);
|
||||||
@@ -60,7 +60,7 @@ public class SmartCompositeMessageConverter extends CompositeMessageConverter {
|
|||||||
@Nullable
|
@Nullable
|
||||||
public Object fromMessage(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
|
public Object fromMessage(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
|
||||||
for (MessageConverter converter : getConverters()) {
|
for (MessageConverter converter : getConverters()) {
|
||||||
if (targetClass.isInstance(message.getPayload()) && !(message.getPayload() instanceof Collection<?>)) {
|
if (!(message.getPayload() instanceof byte[]) && targetClass.isInstance(message.getPayload()) && !(message.getPayload() instanceof Collection<?>)) {
|
||||||
return message.getPayload();
|
return message.getPayload();
|
||||||
}
|
}
|
||||||
Object result = (converter instanceof SmartMessageConverter ?
|
Object result = (converter instanceof SmartMessageConverter ?
|
||||||
|
|||||||
Reference in New Issue
Block a user