서블릿이 JSP 페이지로 전달되면 브라우저 주소 표시줄에 서블릿의 경로가 표시되지만 JSP 페이지의 하이퍼링크가 여전히 상대적인 경우 JSP 페이지 Servlet의 주소와 JSP 페이지의 주소가 같은 폴더에 있지 않으면 경로 혼동이 발생합니다.
contextPath(현재 웹 애플리케이션의 컨텍스트)에 대한 상대 경로입니다.
해결책: 하이퍼링크에 상대 경로 대신 절대 경로를 사용하세요. /가 사이트의 루트 디렉터리를 나타내는 경우 그 앞에 contextPath를 추가하세요.
<a href="<%= request.getContextPath() %>/TestServlet">To B</a>
'/'는 http://localhost:8080/contextPath/를 나타냅니다. : 서블릿 처리된 주소에서 옵니다
1) 전달: request.getRequestDispatcher("/path/b.jsp").forword(request, response);
2) web.xml 파일에 서블릿 액세스 경로 매핑
<servlet-mapping><servlet-name>TestServlet</servlet-name><url-pattern>/TestServlet</url-pattern></servlet-mapping>
3) 다양한 맞춤 태그에 '/'를 사용합니다.
'/'는 브라우저에서 처리되는 주소인 http://localhost:8080/을 나타냅니다.
1) 하이퍼링크: /TestServlet ">To B
2) 양식 태그의 작업: