eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

필터에서 다른 url로 포워딩하는 경우 질문입니다.
  • 작성자

    박*호

  • 작성일

    2012-11-08 16:24:07

  • 조회수

    1,869

  • 구분

    실행환경

  • 진행상태

    완료

질문

각종 필터 소스에서 필터에 해당할 경우 요청 url이 아닌 다른 url로 전달할 때 아래와 같이 사용합니다.

1.
httpResponse.sendRedirect("/monitoring-web/oe2/EgovLoginForm.do");
2.
request.getRequestDispatcher( "/oe2/EgovLoginForm.do" ).forward( request, response );

request 정보가 전달되는 화면에서 필요하여 2번을 사용하였을 때,
!브라우져를 최초 띄우고! 저 필터로 포워딩 되는 경우 url에 웹로직의 경우 jsessionid값이 붙는데, 왜 이런지 궁금합니다.

이 후 다시 해당 필터 소스에 걸리는 경우는 단순 요청 url만 나타납니다.

ex)
브라우져 켠 후 최초 호출시
http://localhost:7001/oe2/EgovNoticeForm.do;jsessionid=JpmHQbdWdGpF74cv4JlGLYb3N8d8kJzfbxtq1VWty5hBN4XK4Qfd!-595881729

그 이 후
http://localhost:7001/oe2/EgovNoticeForm.do

답변

안녕하세요.. 박준호님..

jsessionid가 URL상에 표시되는 것은.. WAS가 사용자가 cookie를 사용하지 못하는 경우를 대비해서(또는 현재 상태에서 해당 도메인의 cookie가 없는 경우).. session id를 처음 만들어 줄 때에.. 위와 같이 URL상에 붙여 주는 것입니다.
(표준프레임워크와 상관없음)

WAS의 session 관리 방법이 cookie에 session id에 대한 값을 넣어 놓고..
서버에 정보를 찾아오는 방식이라..
cookie에 session id가 저장되는 것은 어쩔 수 없습니다.

그런 의미에서.. URL에 보이고 안보이고는 사실 중요하지 않습니다.
(실제 cookie에 대한 정보는 request header에 넣어가기 때문에 .. 보려고 하면.. proxy tool 등을 통해 볼 수 있음..)

또는 WAS별로 위와 같은 URL rewrite를 제어하는 방법이 있을 수 있기 때문에.. 사용하시는 WAS 벤더에 문의해 보시구요.. (URL 상에만 표시하지 않는 방법)

그럼.. 즐거운 하루되십시오.
감사합니다.

이 페이지의 구성

묻고 답하기