인터셉터

액션의 호출을 동적으로 가로채는 객체로써 다양한 기능을 제공한다. 

1. action 의 메소드
2. ex) UserDao 객체를 생성하여 액션의 setUserDao() 에 넣어줄수있음

* 네임스페이스가 다르다면 명칭이 동일해도 문제없다. 하지만 같은 네임스페이스안에 동일한 명칭은 사용불가

인터셉터의 리턴코드

-ERROR : 액션 실행에 실패하여 에러 페이지로 돌아간다.

-INPUT :  입력값이 부족하거나 문제가있어 입력 페이지로 돌아간다.
-LOGIN :  로그인을 하지 않아서 액션을 실행 할수 없으므로 로그인 페이지로 돌아간다.
-NONE :  액션이 성공적으로 실행은 되었지만 화면을 보여주지 않는다.
-SUCCESS :  액션이 성공적으로 실행되어 결과화면을 사용자에게 보여준다.


인터셉터의 종류

params

- 폼에서 입력받은 값을 액션 객체에 전달하기 위해서 params 인터셉터에 대해서 살펴본다.




chaining

- 이전에 실행된 액션의 속성을 현재 액션에서 사용하도록 한다.많은 경우 이 인터셉터는 리절트 체인과 함께 사용된다.


- 주소가 안바뀌는 장점이있슴


createSession

- HTTP 세션을 자동으로 생성한다.


debugging 

-개발자에 따라 커스터 마이즈된 다양한 디버깅 화면을 제공한다.


exception

-액션 실행중에 발생한 예외 케이스에 대해 결과에 반영한다. 자동으로 예외 처리 핸들러에 리다이렉션 하도록한다.


fileUpload

-파일 업로드 기능을 지원하는 인터셉터이다.


i18n

- 사용자 세션에 따라서 선택된 지역화 설정을 유지한다.


store

-ValidationaAware 인터페이스를 구현함으로써 메시지를 저장하고 검색한다. 필드 에러나 액션에서 발생하는 에러메시지를 저장한다.


scoped Model-Driven

-ScopedModelDriven 인터페이스를 구현하는 액션을 위해서 특정 스코프에 해당하는 모델 객체를 저장하고 검색하는 기능이다.


scope

-세션 또는 애플리케이션 스코프에서 액션의 상태를 저장하고 검색한다.


servletConfig

-다양한 서블릿 기반 정보에 대해 접근하는 액션을 제공한다.


staticParams

-정적으로 정의된 값을 액션에 설정한다. 예를 들면 액션 설정시 param 태그를 사용하여 설정한 값들이 이에 해당한다.


roles

-현재 유저가 설정된 역할중 하나에 해당할 때에만 액션이 실행되도록한다.


token

-중복된 폼 전송을 방지하기 위해서 올바른 토큰을 가지고 있는지를 체크한다. 이러한 기능은 인터넷 웹 사이트에서 전자 결제를 구현할 때 많이 사용된다.  

  특히. 인터넷으로 결제 기능을 제공하는 경우 사용자가 결제 버튼을 두 번 누름으로써 신용카드 결제가 여러 번 이루어지는 경우가 종종 발생한다. 이를 방지하기 위해서 token인터셉터를 사용한다.


tokenSession

-토큰과 유사하다. 하지만. 올바르지 않은 토큰이 주어진 경우는 전송된 데이터를 세션에 저장한다.


vaildation

-액션에서 전달할 데이터를 검증하는 기능을 제공한다.


인터셉터 스택의 종류


+ Recent posts