2012-06-01 1 views
0

예외를 테스트하고 클라이언트에 특정 HTTP 상태 코드를 반환하는 간단한 Grails 앱 (1.3.7)이 있습니다.GRAILS : 별도의 WebLogic 10.3 인스턴스에서 500 개의 상태 코드를 일관성없이 처리합니다.

Grails가 표준 error보기를 사용하여 응답을 렌더링하지 못하게하려면 의 기본값 "500" (view: '/error')을 비활성화했습니다.

내가있는 내가 예외를 잡기 후, 리디렉션 및 응답을 렌더링하기 위해 내 컨트롤러에서 간단한 폐쇄있어

...

def remoteError = { 
    response.status = 500 
    render ([__error: "A remote error occurred"] as JSON) 
} 

테스트 예외는 웹 로직 10.3의 하나 개의 인스턴스에 던지면 응답은 다음과 같습니다 ...

{ 
    __error: "A remote error occurred" 
} 

정확하게 예상 한 것입니다.

그러나 다른 WebLogic 10.3 인스턴스에 배포 된 똑같은 WAR 파일은 아래에 표시된 표준 Grails 오류 페이지를 생성합니다. WAR 파일이 변경되지 않았으므로 WebLogic에서 어떤 설정으로 인해 다른 인스턴스와 다르게 동작하는지 알아 내려고했습니다.

enter image description here

답변

0

이 문제가 우리의 배포 WAR에서 누락 된 플러그인에 관련이 밝혀졌습니다. WebLogic의 한 인스턴스에서 플러그인은 maven/ivy 캐시에 있었지만 다른 플러그인에서는 그렇지 않았습니다. 따라서 WAR가 다르게 작동하는 것 같습니다.

관련 문제