[KSUG] RuntimeException 발생시 Tomcat에 따라 500 Internal Server Error가 아닌 503 Service Unavailable이 나타나는 이유??

772 views
Skip to first unread message

고종봉

unread,
Feb 15, 2012, 10:26:19 AM2/15/12
to ks...@googlegroups.com
안녕하세요. 고종봉입니다.

오늘도 질문 하나 올려봅니다.

개발 중에 이해하기 어려운 현상을 경험해서, 답을 구해봅니다.

기본적인 구성은 Apache - Tomcat - Spring 3.x MVC 입니다.


web.xml에 500 에러에 대한 에러 페이지를 정의해 놓고 테스트를 위해

Controller에서 RuntimeException을 발생시켰습니다.

로컬이나 테스트 서버에서는 500 Internal Server Error가 발생하면서 에러페이지가 정상적으로 표시되는데,

(환경이 거의 동일한) 스테이징 서버 등에서는 503 Service Unavailable이 나타나면서 에러페이지가 표시되지 않고 빈 화면만 (<body>만 있는) 나타납니다.

다른 403 에러 등에 대해서는 모두 정상적으로 동작하는데, RuntimeException을 발생시킨 url에 대해서만 저렇게 나타납니다.


혹시.. 이러한 현상에 대해 원인이나 해결 방법을 알고 계신분 계신가요??

완전 궁금합니다..


Sungchul Park

unread,
Feb 15, 2012, 7:34:52 PM2/15/12
to ks...@googlegroups.com
혹시 스테이징 서버에는 앞단에 아파치 httpd를 놓고 그 뒤에 톰캣을 두지 않으셨나요?

> --
> Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메일이
> 전송되었습니다.
> 이 그룹에 게시하려면 ks...@googlegroups.com(으)로 이메일을 보내세요.
> 그룹에서 탈퇴하려면 ksug+uns...@googlegroups.com로 이메일을 보내
> 주세요.
> 더 많은 옵션을 보려면 http://groups.google.com/group/ksug?hl=ko에서 그
> 룹을 방문하세요.


고종봉

unread,
Feb 15, 2012, 8:48:32 PM2/15/12
to ks...@googlegroups.com
스테이징,, 개발 모두 Apache - Tomcat 구조 입니다.

설정도 거의 같구요..

2012년 2월 16일 오전 9:34, Sungchul Park <gyu...@gmail.com>님의 말:
혹시 스테이징 서버에는 앞단에 아파치 httpd를 놓고 그 뒤에 톰캣을 두지 않으셨나요?


On Thu Feb 16 00:26:19 2012, 고종봉 wrote:
안녕하세요. 고종봉입니다.

오늘도 질문 하나 올려봅니다.

개발 중에 이해하기 어려운 현상을 경험해서, 답을 구해봅니다.

기본적인 구성은 Apache - Tomcat - Spring 3.x MVC 입니다.


web.xml에 500 에러에 대한 에러 페이지를 정의해 놓고 테스트를 위해

Controller에서 RuntimeException을 발생시켰습니다.

로컬이나 테스트 서버에서는 500 Internal Server Error가 발생하면서 에러 페이지가 정상적으로 표시되는데,


(환경이 거의 동일한) 스테이징 서버 등에서는 503 Service Unavailable이 나타나면서 에러페이지가 표시되지 않고 빈 화면만 (<body>만 있는) 나타납 니다.

다른 403 에러 등에 대해서는 모두 정상적으로 동작하는데, RuntimeException을 발생시킨 url에 대해서만 저렇게 나타납니다.


혹시.. 이러한 현상에 대해 원인이나 해결 방법을 알고 계신분 계신가요??

완전 궁금합니다..


--
Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메일이 전송되었습니다.
이 그룹에 게시하려면 ks...@googlegroups.com(으)로 이메일을 보내세요.
그룹에서 탈퇴하려면 ksug+unsubscribe@googlegroups.com로 이메일을 보내 주세요.

더 많은 옵션을 보려면 http://groups.google.com/group/ksug?hl=ko에서 그 룹을 방문하세요.
--
Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메일이 전송되었습니다.
이 그룹에 게시하려면 ks...@googlegroups.com(으)로 이메일을 보내세요.
그룹에서 탈퇴하려면 ksug+unsubscribe@googlegroups.com로 이메일을 보내주세요.

Sewon Ann

unread,
Feb 15, 2012, 8:52:57 PM2/15/12
to ks...@googlegroups.com
실마리가 될 진 모르겠지만, 종봉님이 RuntimeException 이라고 한정해서 말씀을 하셨는데 
그럼 테스트 코드에서 unchecked exception이 아닌 checked exception을 던져보면 결과가 다르게 나오나요? 

결과가 같다면 그냥 exception 발생하면 모두 503 이 나오겠네요.
결과가 다르다면, 즉 checked exception이면 500, unchecked exception이면 503이면 더 미궁으로 빠질 것 같구요. @_@

그룹에서 탈퇴하려면 ksug+uns...@googlegroups.com로 이메일을 보내주세요.

고종봉

unread,
Feb 15, 2012, 8:55:46 PM2/15/12
to ks...@googlegroups.com
한가지 실마리를 더 드리면,,,

서버 로그 상에 RuntimeException 이 발생했다는게 둘 다 똑같이 찍히고 있어요..

그걸로 추리해보면,, 요청이 들어와서 Controller를 타고, Exception 발생해서 

나가는 과정에서 달라지는 것 같은데요.. 흠..



2012년 2월 16일 오전 10:52, Sewon Ann <kin...@gmail.com>님의 말:

Sungchul Park

unread,
Feb 15, 2012, 11:33:24 PM2/15/12
to ks...@googlegroups.com
스데이징 서버 로컬에서 wget 등으로 직접 해당 URL을 호출했을 때에도 503 에러인가요?

On Thu Feb 16 10:55:46 2012, 고종봉 wrote:
> 한가지 실마리를 더 드리면,,,
>
> 서버 로그 상에 RuntimeException 이 발생했다는게 둘 다 똑같이 찍히고 있
> 어요..
>
> 그걸로 추리해보면,, 요청이 들어와서 Controller를 타고, Exception 발생해서
>
> 나가는 과정에서 달라지는 것 같은데요.. 흠..
>
>
>
> 2012년 2월 16일 오전 10:52, Sewon Ann <kin...@gmail.com

> <mailto:kin...@gmail.com>>님의 말:


>
> 실마리가 될 진 모르겠지만, 종봉님이 RuntimeException 이라고 한정해
> 서 말씀을 하셨는데
> 그럼 테스트 코드에서 unchecked exception이 아닌 checked exception
> 을 던져보면 결과가 다르게 나오나요?
>
> 결과가 같다면 그냥 exception 발생하면 모두 503 이 나오겠네요.
> 결과가 다르다면, 즉 checked exception이면 500, unchecked exception
> 이면 503이면 더 미궁으로 빠질 것 같구요. @_@
>
> On Thu, Feb 16, 2012 at 10:48 AM, 고종봉 <mercu...@gmail.com
> <mailto:mercu...@gmail.com>> wrote:
>
> 스테이징,, 개발 모두 Apache - Tomcat 구조 입니다.
>
> 설정도 거의 같구요..
>
> 2012년 2월 16일 오전 9:34, Sungchul Park <gyu...@gmail.com

> <mailto:gyu...@gmail.com>>님의 말:

> <mailto:ks...@googlegroups.com>(으)로 이메일을 보내세요.
> 그룹에서 탈퇴하려면
> ksug+unsubscribe@googlegroups.__com
> <mailto:ksug%2Bunsu...@googlegroups.com>로 이메일


> 을 보내 주세요.
> 더 많은 옵션을 보려면

> http://groups.google.com/__group/ksug?hl=ko
> <http://groups.google.com/group/ksug?hl=ko>에서 그 룹


> 을 방문하세요.
>
>
>
> --
> Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므

> 로 본 메일이 전송되었습니다.
> 이 그룹에 게시하려면 ks...@googlegroups.com

> <mailto:ks...@googlegroups.com>(으)로 이메일을 보내세요.
> 그룹에서 탈퇴하려면 ksug+unsubscribe@googlegroups.__com
> <mailto:ksug%2Bunsu...@googlegroups.com>로 이메일을 보


> 내주세요.
> 더 많은 옵션을 보려면

> http://groups.google.com/__group/ksug?hl=ko
> <http://groups.google.com/group/ksug?hl=ko>에서 그룹을 방
> 문하세요.
>
>
> --

> Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본
> 메일이 전송되었습니다.
> 이 그룹에 게시하려면 ks...@googlegroups.com

> <mailto:ks...@googlegroups.com>(으)로 이메일을 보내세요.
> 그룹에서 탈퇴하려면 ksug+uns...@googlegroups.com
> <mailto:ksug%2Bunsu...@googlegroups.com>로 이메일을 보내주


> 세요.
> 더 많은 옵션을 보려면 http://groups.google.com/group
> /ksug?hl=ko에서 그룹을 방문하세요.
>
>
> --

> Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메
> 일이 전송되었습니다.
> 이 그룹에 게시하려면 ks...@googlegroups.com

> <mailto:ks...@googlegroups.com>(으)로 이메일을 보내세요.
> 그룹에서 탈퇴하려면 ksug+uns...@googlegroups.com
> <mailto:ksug%2Bunsu...@googlegroups.com>로 이메일을 보내주세요.


> 더 많은 옵션을 보려면 http://groups.google.com/group/ksug?hl=ko
> 서 그룹을 방문하세요.
>
>
> --

> Google 그룹스 'Korea Spring User Group' 그룹에 가입했으므로 본 메일이
> 전송되었습니다.
> 이 그룹에 게시하려면 ks...@googlegroups.com(으)로 이메일을 보내세요.

> 그룹에서 탈퇴하려면 ksug+uns...@googlegroups.com로 이메일을 보내

Reply all
Reply to author
Forward
0 new messages