ошибка @WebServlet(«/*») при поиске .jsp

#java

#java

Вопрос:

 @WebServlet("/*")
public class Venta extends HttpServlet

RequestDispatcher rd = request.getRequestDispatcher("/ventas.jsp");
rd.forward(request, response);
  

при добавлении звездочки * в аннотации создается впечатление, что весь jsp приложения исчезнет.

ошибка org.apache.tomcat.websocket.сервер.WsFilter.doFilter (WsFilter.java:53)

Ответ №1:

Я не думаю, что это сработает, попробуйте:

 import javax.servlet.annotations.WebServlet;

@WebServlet(name="Venta", urlPatterns={"/*"})
  

Ответ №2:

Вместо того, чтобы использовать сервлет, разве вы не должны пытаться реализовать фильтр?

 @WebFilter("/*", dispatcherTypes={DispatcherType.REQUEST, DispatcherType.FORWARD})
public class MyFilter implements Filter {
    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) {
       request.getRequestDispatcher("/ventas.jsp").forward(request, response);
    }
  }
  

Вы можете увидеть больше в:https://www.codejava.net/java-ee/servlet/webfilter-annotation-examples
или пример реализации:https://www.javaguides.net/2019/02/webfilter-annotation-example.html