Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Login extends HttpServlet {
- private static final long serialVersionUID = 1L;
- private static final Logger log = LogManager.getLogger();
- /**
- * @see HttpServlet#HttpServlet()
- */
- public Login() {
- super();
- }
- @SuppressWarnings("unchecked")
- public void init(){
- Map<String, User> DB = null;
- if (this.getServletContext().getAttribute("DB") == null){
- DB = new HashMap<String, User>();
- User user1 = new User("user1", "pass1");
- user1.setFullName("The User 1");
- User user2 = new User("user2", "pass2");
- user2.setFullName("The User 2");
- DB.put("user1", user1);
- DB.put("user2", user2);
- log.debug("The following users have been added to the database: " + user1.getUsername() + " " + user2.getUsername());
- } else {
- DB = (HashMap<String, User>) this.getServletContext().getAttribute("DB");
- }
- if (DB.isEmpty()){
- log.info("No Users");
- }
- log.info("Usuarios en DB {}", DB.keySet());
- }
- protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- if (request.getSession(true).getAttribute("user") != null){
- request.getRequestDispatcher("/WEB-INF/views/session.jsp").forward(request, response);
- } else {
- doPost(request,response);
- }
- }
- protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
- List<String> errors = new ArrayList<String>();
- if (request.getParameter("inputUsername") != null && request.getParameter("inputPassword") != null ){
- String username = request.getParameter("inputUsername");
- String password = request.getParameter("inputPassword");
- if (username != null || password != null) {
- log.info("Autentificando a {}", username);
- }
- //This is the line where I get the second NullPointerException
- User user = login(username, password);
- if (user != null){
- request.getSession(true).setAttribute("user", user.getUsername());
- Cookie fullName = new Cookie("fullName", user.getFullName());
- response.addCookie(fullName);
- } else{
- log.error("Invalid username or password.");
- errors.add("Invalid username or password.");
- request.setAttribute("errors", errors);
- request.getRequestDispatcher("/WEB-INF/views/login.jsp").forward(request, response);
- }
- } else {
- log.warn("You must login first");
- errors.add("You must login first.");
- request.getRequestDispatcher("/WEB-INF/views/login.jsp").forward(request, response);
- }
- }
- private User login(String username, String password){
- if (username == null || password == null){
- return null;
- }
- HashMap<String, User> DB = null;
- DB = (HashMap<String, User>) getServletContext().getAttribute("DB");
- User user = (User) DB.get(username);
- if (user == null){
- return null;
- }
- if (!user.getPassword().equals(password.trim())){
- return null;
- }
- return user;
- }
- User user = login(username, password);
- User user = (User) DB.get(username);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement