title: Spring Exception: org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 8): Method call: Method retrieveRecords(java.util.Vector)
body: <p>I am using spring integration 2.2.1 with int-jpa: inbound-channel-adaptor. I am getting the exception</p>
  <p><strong>org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 8): Method call: Method retrieveRecords(java.util.Vector) cannot be found on foo.bar.ResponseProcessor type</strong></p>
  <p>when deploying web app. Below are the most germane portions of the spring config file (with some things renamed):</p>
  <pre><code>....
  
   &lt;bean id=&quot;responseProcessor&quot; 
   class=&quot;foo.bar.ResponseProcessor&quot;&gt;
   &lt;/bean&gt;
  
  &lt;int-jpa:inbound-channel-adapter
      id=&quot;ResultsProcessor&quot;
      channel=&quot;responseChannel&quot;
      auto-startup=&quot;true&quot;
      expect-single-result=&quot;false&quot;
      delete-after-poll=&quot;false&quot;
      entity-manager-factory=&quot;entityManagerFactory&quot;
      entity-class=&quot;foo.bar.FooRequest&quot;&gt;
      &lt;int:poller 
          id=&quot;responsePoller&quot; 
          fixed-rate=&quot;5000&quot; 
          max-messages-per-poll=&quot;10&quot;&gt;
      &lt;/int:poller&gt;
  &lt;/int-jpa:inbound-channel-adapter&gt;
  
  &lt;int:channel id=&quot;responseChannel&quot;/&gt;
  
  &lt;int:service-activator 
      input-channel=&quot;responseChannel&quot; 
      ref=&quot;responseProcessor&quot; 
      method=&quot;retrieveOpenRecords&quot; /&gt; 
  
  ....
  </code></pre>
  <p>The class corresponding to the bean foo.bar.ResponseProcessor is below:</p>
  <pre><code>import org.apache.commons.logging.Log;
  import org.apache.commons.logging.LogFactory;
  
  import foo.bar.FooRequest;
  
  
  public class ResponseProcessor {
  
      /** The log. */
      private static Log log = LogFactory.getLog(ResponseProcessor.class);
  
      public void retrieveOpenRecords(FooRequest fr) {
          if (fr == null) {
              log.error(&quot;No open records were found&quot;);
              return;
          }
      }
  }
  </code></pre>
  <p>, and the truncated stack trace output here (again, with some rewording):</p>
  <pre><code>2018-02-28 09:41:04,811 INFO [org.springframework.context.support.DefaultLifecycleProcessor] - &lt;Starting beans in phase 2147483647&gt;
  2018-02-28 09:41:04,817 INFO [org.springframework.integration.endpoint.SourcePollingChannelAdapter] - &lt;started ResultsProcessor&gt;
  2018-02-28 09:41:04,821 INFO [org.springframework.web.context.ContextLoader] - &lt;Root WebApplicationContext: initialization completed in 11377 ms&gt;
  2018-02-28 09:41:04,919 ERROR [org.springframework.integration.handler.LoggingHandler] - &lt;org.springframework.integration.MessageHandlingException: org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 8): Method call: Method retrieveOpenRecords(java.util.Vector) cannot be found on foo.bar.ResponseProcessor type
  at org.springframework.integration.handler.MethodInvokingMessageProcessor.processMessage(MethodInvokingMessageProcessor.java:76)
  at org.springframework.integration.handler.ServiceActivatingHandler.handleRequestMessage(ServiceActivatingHandler.java:67)
  at org.springframework.integration.handler.AbstractReplyProducingMessageHandler.handleMessageInternal(AbstractReplyProducingMessageHandler.java:134)
  at org.springframework.integration.handler.AbstractMessageHandler.handleMessage(AbstractMessageHandler.java:73)
  at org.springframework.integration.dispatcher.UnicastingDispatcher.doDispatch(UnicastingDispatcher.java:115)
  at org.springframework.integration.dispatcher.UnicastingDispatcher.dispatch(UnicastingDispatcher.java:102)
  at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:77)
  at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:157)
  at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:128)
  at org.springframework.integration.core.MessagingTemplate.doSend(MessagingTemplate.java:288)
  at org.springframework.integration.core.MessagingTemplate.send(MessagingTemplate.java:149)
  at org.springframework.integration.endpoint.SourcePollingChannelAdapter.handleMessage(SourcePollingChannelAdapter.java:97)
  at org.springframework.integration.endpoint.AbstractTransactionSynchronizingPollingEndpoint.doPoll(AbstractTransactionSynchronizingPollingEndpoint.java:82)
  at org.springframework.integration.endpoint.AbstractPollingEndpoint$1.call(AbstractPollingEndpoint.java:146)
  at org.springframework.integration.endpoint.AbstractPollingEndpoint$1.call(AbstractPollingEndpoint.java:144)
  at org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller$1.run(AbstractPollingEndpoint.java:236)
  at org.springframework.integration.util.ErrorHandlingTaskExecutor$1.run(ErrorHandlingTaskExecutor.java:52)
  at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:48)
  at org.springframework.integration.util.ErrorHandlingTaskExecutor.execute(ErrorHandlingTaskExecutor.java:49)
  at org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller.run(AbstractPollingEndpoint.java:231)
  at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:51)
  at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
  Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1004E:(pos 8): Method call: Method retrieveOpenRecords(java.util.Vector) cannot be found on foo.bar.ResponseProcessor type
  at org.springframework.expression.spel.ast.MethodReference.findAccessorForMethod(MethodReference.java:177)
  at org.springframework.expression.spel.ast.MethodReference.getValueInternal(MethodReference.java:101)
  at org.springframework.expression.spel.ast.CompoundExpression.getValueInternal(CompoundExpression.java:57)
  at org.springframework.expression.spel.ast.SpelNodeImpl.getTypedValue(SpelNodeImpl.java:102)
  at org.springframework.expression.spel.standard.SpelExpression.getValue(SpelExpression.java:102)
  at org.springframework.integration.util.AbstractExpressionEvaluator.evaluateExpression(AbstractExpressionEvaluator.java:126)
  at org.springframework.integration.util.MessagingMethodInvokerHelper.processInternal(MessagingMethodInvokerHelper.java:227)
  at org.springframework.integration.util.MessagingMethodInvokerHelper.process(MessagingMethodInvokerHelper.java:127)
  at org.springframework.integration.handler.MethodInvokingMessageProcessor.processMessage(MethodInvokingMessageProcessor.java:73)
  ... 28 more
  </code></pre>
  <p>I am wondering whether I am missing some clarification of the method signature for retrieveOpenRecords somewhere in the service-activator? Grateful for any insights. Thanks</p>