title: How does Spring determine Handler when RequestMapping has params defined
body: <p>I have the following @RequestMapping defined for a Controller's method.</p>
  
  <pre><code>@RequestMapping(value = "{transactionId}/continue", params = "submitButton=enterApplication")
  </code></pre>
  
  <p>In the JSP, I have the following button defined:</p>
  
  <pre><code>&lt;button type="submit" name="submitButton" id="button.enterApplication" value="enterApplication"&gt;
  Enter Application
  &lt;/button&gt;
  </code></pre>
  
  <p>Everything works fine with modern browsers.  The following is submitted in the request:</p>
  
  <pre><code>submitButton=enterApplication
  </code></pre>
  
  <p>But it looks like with IE7 (probably earlier as well), the browser is submitting the contents of the button tag instead of the value attribute.  So in this case, it is submitting the following:</p>
  
  <pre><code>submitButton=Enter+Application
  </code></pre>
  
  <p>Note the '+' symbol instead of a space (using Fiddler, I was able to inspect the Request and saw the above parameter/value had the '+' in it).  I'm pretty sure this is where my problem is -but I'm not sure what to do about it.  I tried to add another method with the following @RequestMapping:</p>
  
  <pre><code>@RequestMapping(value = "{transactionId}/continue", params = "submitButton=Enter+Application")
  </code></pre>
  
  <p>But this does not seem to work.  I continue to get the following error:</p>
  
  <pre><code>javax.servlet.ServletException: No adapter for handler [...]: Does your handler implement a supported interface like Controller?
  </code></pre>
  
  <p>Is there a way to determine what logic Spring is doing to compare what is being submitted in the request with the defined params in the @RequestMapping?  I'm thinking there has to be a problem comparing the space or '+' character.</p>
  
  <p>*Note: The problem may not necessarily be the plus character -that was just my initial thought.  If I can figure out how Spring determines the handler, I may be able to figure out why it's not matching.</p>