26 * POSSIBILITY OF SUCH DAMAGE. |
26 * POSSIBILITY OF SUCH DAMAGE. |
27 * |
27 * |
28 */ |
28 */ |
29 package de.uapcore.lightpit.modules; |
29 package de.uapcore.lightpit.modules; |
30 |
30 |
31 |
31 import de.uapcore.lightpit.AbstractLightPITServlet; |
32 import de.uapcore.lightpit.*; |
32 import de.uapcore.lightpit.Constants; |
|
33 import de.uapcore.lightpit.HttpMethod; |
|
34 import de.uapcore.lightpit.RequestMapping; |
33 import de.uapcore.lightpit.dao.DataAccessObjects; |
35 import de.uapcore.lightpit.dao.DataAccessObjects; |
34 import de.uapcore.lightpit.entities.User; |
36 import de.uapcore.lightpit.entities.User; |
35 import de.uapcore.lightpit.viewmodel.UsersEditView; |
37 import de.uapcore.lightpit.viewmodel.UsersEditView; |
36 import de.uapcore.lightpit.viewmodel.UsersView; |
38 import de.uapcore.lightpit.viewmodel.UsersView; |
37 import org.slf4j.Logger; |
39 import org.slf4j.Logger; |
38 import org.slf4j.LoggerFactory; |
40 import org.slf4j.LoggerFactory; |
39 |
41 |
|
42 import javax.servlet.ServletException; |
40 import javax.servlet.annotation.WebServlet; |
43 import javax.servlet.annotation.WebServlet; |
41 import javax.servlet.http.HttpServletRequest; |
44 import javax.servlet.http.HttpServletRequest; |
|
45 import javax.servlet.http.HttpServletResponse; |
|
46 import java.io.IOException; |
42 import java.sql.SQLException; |
47 import java.sql.SQLException; |
43 import java.util.NoSuchElementException; |
48 import java.util.NoSuchElementException; |
44 |
49 |
45 @WebServlet( |
50 @WebServlet( |
46 name = "UsersModule", |
51 name = "UsersModule", |
54 protected String getResourceBundleName() { |
59 protected String getResourceBundleName() { |
55 return "localization.users"; |
60 return "localization.users"; |
56 } |
61 } |
57 |
62 |
58 @RequestMapping(method = HttpMethod.GET) |
63 @RequestMapping(method = HttpMethod.GET) |
59 public ResponseType index(HttpServletRequest req, DataAccessObjects dao) throws SQLException { |
64 public void index(HttpServletRequest req, HttpServletResponse resp, DataAccessObjects dao) throws SQLException, ServletException, IOException { |
60 final var userDao = dao.getUserDao(); |
65 final var userDao = dao.getUserDao(); |
61 |
66 |
62 final var viewModel = new UsersView(); |
67 final var viewModel = new UsersView(); |
63 viewModel.setUsers(userDao.list()); |
68 viewModel.setUsers(userDao.list()); |
64 setViewModel(req, viewModel); |
69 setViewModel(req, viewModel); |
65 setContentPage(req, "users"); |
70 setContentPage(req, "users"); |
66 |
71 |
67 return ResponseType.HTML; |
72 renderSite(req, resp); |
68 } |
73 } |
69 |
74 |
70 @RequestMapping(requestPath = "edit", method = HttpMethod.GET) |
75 @RequestMapping(requestPath = "edit", method = HttpMethod.GET) |
71 public ResponseType edit(HttpServletRequest req, DataAccessObjects dao) throws SQLException { |
76 public void edit(HttpServletRequest req, HttpServletResponse resp, DataAccessObjects dao) throws SQLException, ServletException, IOException { |
72 |
77 |
73 final var viewModel = new UsersEditView(); |
78 final var viewModel = new UsersEditView(); |
74 viewModel.setUser(findByParameter(req, Integer.class, "id", |
79 viewModel.setUser(findByParameter(req, Integer.class, "id", |
75 dao.getUserDao()::find).orElse(new User(-1))); |
80 dao.getUserDao()::find).orElse(new User(-1))); |
76 |
81 |
77 setViewModel(req, viewModel); |
82 setViewModel(req, viewModel); |
78 setContentPage(req, "user-form"); |
83 setContentPage(req, "user-form"); |
79 |
84 |
80 return ResponseType.HTML; |
85 renderSite(req, resp); |
81 } |
86 } |
82 |
87 |
83 @RequestMapping(requestPath = "commit", method = HttpMethod.POST) |
88 @RequestMapping(requestPath = "commit", method = HttpMethod.POST) |
84 public ResponseType commit(HttpServletRequest req, DataAccessObjects dao) { |
89 public void commit(HttpServletRequest req, HttpServletResponse resp, DataAccessObjects dao) throws ServletException, IOException { |
85 |
90 |
86 User user = new User(-1); |
91 User user = new User(-1); |
87 try { |
92 try { |
88 user = new User(getParameter(req, Integer.class, "userid").orElseThrow()); |
93 user = new User(getParameter(req, Integer.class, "userid").orElseThrow()); |
89 user.setUsername(getParameter(req, String.class, "username").orElseThrow()); |
94 user.setUsername(getParameter(req, String.class, "username").orElseThrow()); |