title: Request params and PUT method
body: <p>I'm trying to get request params passed by PUT request, at Grails-based app.</p>
  
  <p>I'm using following client code to make request:</p>
  
  <pre><code>$.ajax({
      url: 'api/controllerName/anId',
      type: 'PUT',
      data: $('form').serialize()
  })
  </code></pre>
  
  <p>with following mapping:</p>
  
  <pre><code>"/api/$controller/$id?" {
      action = [ GET: "read", POST: "create", PUT: "update", DELETE: "delete"]
  }
  </code></pre>
  
  <p>But my controller's action receives empty params list, with only id value. I tried to put it content to logs and saw only:</p>
  
  <pre><code>[id:anId, action:[GET:read, POST:create, PUT:update, DELETE:delete], controller:controllerName]
  </code></pre>
  
  <p>and <code>request.getParameterNames()</code> returns empty list of values.</p>
  
  <p>As I see from FireBug, request contains this params, and have Content-Type  as <code>application/x-www-form-urlencoded; charset=UTF-8</code> </p>
  
  <p>If I'm using GET/POST method - everything is working as expected, I can get all passed parameters.</p>
  
  <p>How I can get access to passed parameters?</p>
  
  <p><strong>Update</strong>: I've just figured that PUT implies passing data as JSON/XML in body. Btw, this question is still actual, just in case</p>