title: Is there any way to send empty payload message using spring integration gateway?
body: <p>I'm trying to make RPC using spring integration AMQP, I have a method that takes no arguments within my Gateway but the message is not sent to my exchange when I call it.</p>
  
  <pre><code>@MessagingGateway
  public interface StatusGateway {
      boolean getStatus();
  }
  </code></pre>
  
  <p>Here my integration-context.xml</p>
  
  <pre><code>&lt;rabbit:connection-factory id="rabbitConnectionFactory" 
      host="172.17.0.2" virtual-host="/myvhost" 
      username="myuser" password="mypasswd" /&gt;
  
  &lt;rabbit:template id="default" connection-factory="rabbitConnectionFactory" /&gt;
  &lt;rabbit:topic-exchange name="slr-input" auto-declare="false" /&gt;
  
  &lt;int:gateway id="statusGateway"
      service-interface="com.example.StatusGateway"
      default-request-channel="requestChannel"
      default-reply-channel="replyChannel" /&gt;
  
  &lt;int:channel id="requestChannel" /&gt;
  &lt;int:channel id="replyChannel" /&gt;
  
  &lt;int-amqp:outbound-gateway id="statusRequestGateway"
      amqp-template="default"
      exchange-name="slr-input"
      routing-key="operation.status"
      request-channel="requestChannel"
      reply-channel="replyChannel"
      lazy-connect="true" /&gt;
  </code></pre>
  
  <p>And when I call the getStatus method I get the following exception</p>
  
  <pre><code>java.lang.IllegalStateException: Failed to execute CommandLineRunner
      at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:803) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:784) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at org.springframework.boot.SpringApplication.afterRefresh(SpringApplication.java:771) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:307) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
      at com.example.AmqpTestClientApplication.main(AmqpTestClientApplication.java:14) [classes/:na]
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_91]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_91]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_91]
      at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_91]
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144) [idea_rt.jar:na]
  Caused by: java.lang.IllegalStateException: receive is not supported, because no pollable reply channel has been configured
      at org.springframework.util.Assert.state(Assert.java:392) ~[spring-core-4.2.7.RELEASE.jar:4.2.7.RELEASE]
      at org.springframework.integration.gateway.MessagingGatewaySupport.receive(MessagingGatewaySupport.java:380) ~[spring-integration-core-4.2.8.RELEASE.jar:na]
      at org.springframework.integration.gateway.GatewayProxyFactoryBean.invokeGatewayMethod(GatewayProxyFactoryBean.java:416) ~[spring-integration-core-4.2.8.RELEASE.jar:na]
      at org.springframework.integration.gateway.GatewayProxyFactoryBean.doInvoke(GatewayProxyFactoryBean.java:382) ~[spring-integration-core-4.2.8.RELEASE.jar:na]
      at org.springframework.integration.gateway.GatewayProxyFactoryBean.invoke(GatewayProxyFactoryBean.java:373) ~[spring-integration-core-4.2.8.RELEASE.jar:na]
      at org.springframework.integration.gateway.GatewayCompletableFutureProxyFactoryBean.invoke(GatewayCompletableFutureProxyFactoryBean.java:64) ~[spring-integration-core-4.2.8.RELEASE.jar:na]
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) ~[spring-aop-4.2.7.RELEASE.jar:4.2.7.RELEASE]
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208) ~[spring-aop-4.2.7.RELEASE.jar:4.2.7.RELEASE]
      at com.sun.proxy.$Proxy44.getStatus(Unknown Source) ~[na:na]
      at com.example.AmqpTestClientApplication.lambda$commandLineRunner$0(AmqpTestClientApplication.java:20) [classes/:na]
      at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:800) [spring-boot-1.3.6.RELEASE.jar:1.3.6.RELEASE]
  </code></pre>
  
  <p>Does anybody know how to make a request without sending a non-empty message?</p>