From 04e784d0331c9155b98518c6fe9d63f40d6ea50d Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Thu, 12 Feb 2009 17:48:44 +0000 Subject: [PATCH] INT-572 --- .../transformer/MethodInvokingTransformer.java | 5 ++++- .../MethodInvokingTransformerTests.java | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/org.springframework.integration/src/main/java/org/springframework/integration/transformer/MethodInvokingTransformer.java b/org.springframework.integration/src/main/java/org/springframework/integration/transformer/MethodInvokingTransformer.java index ec68562372..9975893d15 100644 --- a/org.springframework.integration/src/main/java/org/springframework/integration/transformer/MethodInvokingTransformer.java +++ b/org.springframework.integration/src/main/java/org/springframework/integration/transformer/MethodInvokingTransformer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -49,6 +49,9 @@ public class MethodInvokingTransformer implements Transformer { public Message transform(Message message) { Object result = this.invoker.invokeMethod(message); + if (result == null) { + return null; + } if (result instanceof Message) { return (Message) result; } diff --git a/org.springframework.integration/src/test/java/org/springframework/integration/transformer/MethodInvokingTransformerTests.java b/org.springframework.integration/src/test/java/org/springframework/integration/transformer/MethodInvokingTransformerTests.java index c4542b06f2..fc6e19c855 100644 --- a/org.springframework.integration/src/test/java/org/springframework/integration/transformer/MethodInvokingTransformerTests.java +++ b/org.springframework.integration/src/test/java/org/springframework/integration/transformer/MethodInvokingTransformerTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2008 the original author or authors. + * Copyright 2002-2009 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -233,6 +233,15 @@ public class MethodInvokingTransformerTests { assertNull(result.getHeaders().get("prop3")); } + @Test + public void nullReturningMethod() { + TestBean testBean = new TestBean(); + MethodInvokingTransformer transformer = new MethodInvokingTransformer(testBean, "nullReturnValueTest"); + StringMessage message = new StringMessage("test"); + Message result = transformer.transform(message); + assertNull(result); + } + private static class TestBean { @@ -269,6 +278,10 @@ public class MethodInvokingTransformerTests { public Message messageReturnValueTest(Message message) { return message; } + + public Object nullReturnValueTest(Message message) { + return null; + } } }