public function updateAction($id)
 {
     $em = $this->dataProvider->getEntityManager();
     $formProvider = new FormProvider();
     $repository = $em->getRepository('LW\\Model\\Entity\\User');
     $entity = $repository->find($id);
     if (!$entity) {
         throw new \Exception('Unable to find User entity.');
     }
     $url = $this->router->getUrlByRoute('admin_user_update', array('id' => $id), false);
     $editForm = $formProvider->getUserEditForm($url, $repository, $entity->getId());
     $editForm->writeFromRequest($this->request);
     $this->response->prepareForJson();
     $returnedValue = $this->createReturnedArray('update');
     if ($editForm->isValid()) {
         $editForm->writeToEntity($entity);
         $em->flush();
         $returnedValue['view'] = $this->viewer->render('user_manager::user::newRow.html.twig', array('entity' => $entity));
     } else {
         $returnedValue['status'] = 'failed';
         $returnedValue['view'] = $this->viewer->render('user_manager::user::edit.html.twig', array('entity' => $entity, 'edit_form' => $editForm));
     }
     return $this->acceptSolutionFlushToResponse(json_encode($returnedValue));
 }