[서블릿/JSP] web.xml에서 filter-mapping 설정의 dispatcher 설정에 대하여
참고글[서블릿/JSP] Exception 타입에 따른 오류 처리 JSP 맵핑하기[서블릿/JSP] HTTP 응답 상태 코드별로 처리할 JSP 지정하기필터 객체의 처리 조건필터는 클라이언트가 서버의 특정 자원을 요청할 때 해당 요청을 필터링 처리하는 것이 목적입니다. 그러나 여기서 말하는 클라이언트는 브라우저만 해당되는 것은 아닙니다. 즉 브라우저가 서블릿이나 JSP를 요청할 수도 있지만 RequestDispatcher 객체의 include()나 forward()를 통해 JSP에서 JSP로 서블릿에서 서블릿으로 요청을 하는 경우도 있습니다.또한 웹 컴포넌트에서 요청을 처리하다 예외가 발생하고 예외를 처리하지 못해 웹 컨테이너로 던져진 경우 설정에 따라 웹 컨테이너가 특정 에러 처리 페이지에 처리를 요청하기도..
Servlet&Jsp
2019. 1. 11. 15:48
[서블릿/JSP] @WebFilter 어노테이션으로 필터 설정하기
이전글[서블릿/JSP] 필터(Filter) 사용 방법 및 예제[서블릿/JSP] 필터(Filter)란? 필터 개념 및 설명@WebFilter 어노테이션으로 필터 설정하기서블릿 스펙 3.0 이전까지는 web.xml을 통해 Servlet과 Filter를 등록하고 URL 맵핑등을 설정하여 사용하였습니다. 그러나 서블릿 3.0 부터는 web.xml에서의 서블릿, 필터 설정을 자바 소스상에서 대체할 수 있는 어노테이션이 추가되었습니다.@WebFilter 어노테이션은 필터를 등록하고 설정하는 어노테이션입니다. 서블릿 3.0은 톰캣을 기준으로 7 버전부터 지원하므로 톰캣7 이상의 서블릿컨테이너를 사용한다면 @WebFilter 어노테이션을 사용하여 필터를 등록할 수 있습니다.다음은 이전글에서 사용했던 예제인 Loggin..
Servlet&Jsp
2019. 1. 9. 00:30
[서블릿/JSP] 필터(Filter) 사용 방법 및 예제
Filter 인터페이스필터를 구현하기 위해 Servlet/Jsp에서는 javax.servlet.Filter라는 인터페이스를 제공하며 이 인터페이스를 구현하도록 되어 있습니다. Filter 인터페이스의 메서드는 다음과 같이 구성되어있습니다.package javax.servlet;import java.io.IOException;public interface Filter { public void init(FilterConfig filterConfig) throws ServletException; public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) t..
Servlet&Jsp
2018. 8. 23. 21:35
[서블릿/JSP] web.xml 설정으로 JSP페이지(jspf 파일) include하기
이전글[서블릿/JSP] include 디렉티브로 다른 JSP 페이지 포함시키기include 디렉티브 의 쓰임새이전글에서도 살펴보았지만 include 디렉티브는 액션태그와 마찬가지로 JSP로 웹 개발을 함에 있어서 중복되는 부분을 제거하고 하나의 JSP 파일로 만들어 관리하기 위해 특정 JSP 페이지를 포함시키는 역할을 합니다.다만 include액션태그와 include 디렉티브의 동작 방식에 차이가 있는 만큼 그 활용 방법에도 차이가 존재하는데, include 액션태그의 경우 여러 페이지에 걸쳐 중복되는 화면 구조를 하나의 파일로 만드는것에 목적이 있다면 include 디렉티브는 최종적으로 포함되는 JSP 페이지와 하나의 JSP 파일로서 동작하기 때문에 여러 JSP 페이지에서 사용하는 공통 변수들을 포..
Servlet&Jsp
2018. 8. 1. 00:52
[서블릿/JSP] HTTP 응답 상태 코드별로 처리할 JSP 지정하기
HTTP 응답 상태 코드별로 처리할 JSP 지정하기HTTP 프로토콜은 클라이언트가 웹서버에게 요청할 때 보내는 Request 메시지와 웹서버가 결과를 처리하고 응답하는 Response 메시지가 쌍으로 동작합니다. 이때 HTTP 프로토콜에는 Response 메시지에 웹서버에 처리 결과에 따른 상태코드를 포함하도록 규정하고 있습니다.2xx 클라이언트의 요청을 정상 처리3xx 리다이렉트4xx 클라이언트측 요청 오류5xx 서버 내부 오류JSP/Servlet 컨테이너도 웹어플리케이션 서버이므로 HTTP 규약을 준수하기 때문에 동작에 따른 코드를 응답하도록 되어 있는데, 예를 들어 클라이언트가 서버에 존재하지 않는 자원의 경로를 요청한 경우 404 Not Found를 응답하도록 하고 있습니다. 다음은 톰캣을 기준으..
Servlet&Jsp
2018. 7. 27. 23:17
[서블릿/JSP] web.xml에서 org.apache.jasper.servlet.JspServlet의 mappedfile 설정
org.apache.jasper.servlet.JspServletJspServlet은 톰캣의 서블릿으로 JSP를 컴파일하는 역할을 담당합니다. web.xml을 통해 JSP JspServlet의 초기화 옵션을 주어 컴파일에 관련된 설정을 할 수 있습니다. jsp org.apache.jasper.servlet.JspServlet mappedfile false mappedfile 옵션그 중 mappedfile 옵션이 있습니다. 클라이언트로부터 요청된 JSP 페이지를 서블릿으로 변환하는 과정에서 JSP 페이지에 작성된 HTML 요소들은 out.write('') 과 같은 형태의 출력문으로 변환됩니다. 이 때 mappedfile 값을 true로 주게 되면 JSP가 서블릿으로 변환되었을 때 HTM..
Servlet&Jsp
2018. 7. 6. 00:23
[서블릿/JSP] JSP application 기본 객체란? web.xml 초기 설정 값 가져오기
관련글[서블릿/JSP] JSP application 기본 객체란? web.xml 초기 설정 값 가져오기[서블릿/JSP] JSP application 기본 객체 서버 정보 가져오기[서블릿/JSP] JSP application 기본 객체로 웹 컨테이너 로그(log) 남기기[서블릿/JSP] JSP application 기본 객체로 웹 어플리케이션 파일 자원 가져오기JSP application 기본 객체(javax.servlet.ServletContext)application 객체는 JSP 기본객체로 JSP 페이지에서 따로 선언하지 않아도 참조하여 사용 가능합니다. application 기본객체는 자신이 속한 웹어플리케이션 범위 안의 모든 JSP 범위에서 공유됩니다.application 객체는 이름 그대로 웹 ..
Servlet&Jsp
2017. 11. 18. 10:44
[서블릿/JSP] 서블릿의 초기화 과정 및 초기화 방법
서블릿의 초기화서블릿은 클라이언트로부터 최초 요청시 단 한번 초기화되며 생성됩니다.WAS 내부의 서블릿 컨테이너에서 서블릿 객체 생성 후 초기화시에 init() 메서드를 호출하는데 이 과정을 서블릿 로딩이라 합니다.이후 해당 서블릿 객체는 서블릿 컨테이너에서 대기하다가 동일한 요청이 있을시 service() 메서드를 통해 요청을 처리합니다.최초 요청시이후 요청시초기화 메서드 init()init() 메서드의 경우 HttpServlet의 최상위 클래스인 Servlet 인터페이스에 정의되어 있습니다.public void init(ServletConfig config) throws ServletException;Servlet의 구현체이며 HttpServlet의 부모 클래스인 GenericServlet 에서는 i..