0

Hey guys this is probably very simple, however I am stuck with a problem with my URL paths in my java web app. (it's using Tomcat 9 for a server)

Here is my servlet:

@WebServlet("/servlet")
public class UserServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    private UserDAO userDAO;

    @Override
    public void init() {
        userDAO = new UserDAO();
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        doGet(request, response);
    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        String action = request.getServletPath();
        
        try {
            switch (action) {
                case "/listUserAdmin":
                    listUserAdmin(request, response);
                    break;
                default:
                    listUser(request, response);
                    break;
            }
        } catch (SQLException ex) {
            throw new ServletException(ex);
        }
    }

    private void listUser(HttpServletRequest request, HttpServletResponse response) throws SQLException, IOException, ServletException {
        List <User> listUser = userDAO.selectAllUsers();
        request.setAttribute("listUser", listUser);        
        request.getRequestDispatcher("user-list.jsp").forward(request, response);        
    }
    
    private void listUserAdmin(HttpServletRequest request, HttpServletResponse response) throws SQLException, IOException, ServletException {
        List <User> listUser = userDAO.selectAllUsers();
        request.setAttribute("listUserAdmin", listUser);        
        RequestDispatcher dispatcher = request.getRequestDispatcher("admin.jsp");
        dispatcher.forward(request, response);
    }
}

This is my context.xml:

<?xml version='1.0' encoding='utf-8'?>
<Context path="/controller" />

And finally this is a simple link to the admin's page:

<a href="<%=request.getContextPath()%>/servlet/listUserAdmin" id="adminPanelBtn" class="nav-link">Admin page</a>

And I am getting error 404 only, no java errors. It's surely quite simple, however I am stuck... Please help

NewJavaEnthusiast
  • 81
  • 1
  • 4
  • 11

0 Answers0