1.1 --- a/src/main/java/de/uapcore/lightpit/modules/UsersModule.java Sat May 30 18:12:38 2020 +0200 1.2 +++ b/src/main/java/de/uapcore/lightpit/modules/UsersModule.java Mon Jun 01 14:46:58 2020 +0200 1.3 @@ -32,6 +32,8 @@ 1.4 import de.uapcore.lightpit.*; 1.5 import de.uapcore.lightpit.dao.DataAccessObjects; 1.6 import de.uapcore.lightpit.entities.User; 1.7 +import de.uapcore.lightpit.viewmodel.UsersEditView; 1.8 +import de.uapcore.lightpit.viewmodel.UsersView; 1.9 import org.slf4j.Logger; 1.10 import org.slf4j.LoggerFactory; 1.11 1.12 @@ -57,7 +59,9 @@ 1.13 public ResponseType index(HttpServletRequest req, DataAccessObjects dao) throws SQLException { 1.14 final var userDao = dao.getUserDao(); 1.15 1.16 - req.setAttribute("users", userDao.list()); 1.17 + final var viewModel = new UsersView(); 1.18 + viewModel.setUsers(userDao.list()); 1.19 + setViewModel(req, viewModel); 1.20 setContentPage(req, "users"); 1.21 1.22 return ResponseType.HTML; 1.23 @@ -66,9 +70,11 @@ 1.24 @RequestMapping(requestPath = "edit", method = HttpMethod.GET) 1.25 public ResponseType edit(HttpServletRequest req, DataAccessObjects dao) throws SQLException { 1.26 1.27 - req.setAttribute("user", findByParameter(req, Integer.class, "id", 1.28 + final var viewModel = new UsersEditView(); 1.29 + viewModel.setUser(findByParameter(req, Integer.class, "id", 1.30 dao.getUserDao()::find).orElse(new User(-1))); 1.31 1.32 + setViewModel(req, viewModel); 1.33 setContentPage(req, "user-form"); 1.34 1.35 return ResponseType.HTML; 1.36 @@ -92,8 +98,10 @@ 1.37 1.38 LOG.debug("Successfully updated user {}", user.getUsername()); 1.39 } catch (NoSuchElementException | IllegalArgumentException | SQLException ex) { 1.40 - // TODO: set request attribute with error text 1.41 - req.setAttribute("user", user); 1.42 + final var viewModel = new UsersEditView(); 1.43 + viewModel.setUser(user); 1.44 + // TODO: viewModel.setErrorText() 1.45 + setViewModel(req, viewModel); 1.46 setContentPage(req, "user-form"); 1.47 LOG.warn("Form validation failure: {}", ex.getMessage()); 1.48 LOG.debug("Details:", ex);