title: @PathVariable annotation works different with Proxy based on Interface/Class
body: <p>I have interface UserController and class UserControllerImpl.
  When i add @RequestMapping and @PathVariable in UserControllerImpl and i am using proxy based on class i am able to get user using this URL:</p>
  
  <p>GET: <a href="http://localhost:8080/company-control/users/25" rel="nofollow noreferrer">http://localhost:8080/company-control/users/25</a></p>
  
  <p>When i change proxy to based on interface and add @RequestMapping and @PatyVariable to interface i am not able to get it and i recieve following error:</p>
  
  <blockquote>
    <p>Request processing failed; nested exception is java.lang.IllegalArgumentException: Name for argument type [int] not available, and parameter name information not found in class file either.</p>
  </blockquote>
  
  <p>I am able to solve this issue adding "userId" to @PathVariable.</p>
  
  <blockquote>
    <p>@GetMapping("/{userId}")</p>
    
    <p>public User getUser(@PathVariable("userId") int userId);</p>
  </blockquote>
  
  <p>Could someone explain me why i have to add "userId" to @PathVariable if i use the same variable name?
  Is it connected with Proxy?</p>