AOP의 ExceptionTransfer에서 MessageSource 접근 문의입니다.
- 작성자 :
- 최*완
- 작성일 :
- 2013-06-04 18:28:16
- 조회수 :
- 1,118
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
프로퍼티 파일을 정의하여서 국제화를 통해 메시지를 웹 페이지에서 잘 출력하고 있습니다. 전자정부에서 제공하는 ExceptionTransfer 테스트를 하고있는데요
ExceptionTransfer내에서는 해당 코드의 메시지를 찾을수 없다고 나오는데 Controller나 JSP에서는 정상적으로 출력이 잘 됩니다....
설정을 다르게 해야 하는 부분이 있는건가요?
다음과 같이 설정해서 사용하고 있습니다.
XML 정의 부분
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>classpath:messages/messages</value>
</list>
</property>
<property name="cacheSeconds" value="0" />
</bean>
ExceptionTransfer내에서는 해당 코드의 메시지를 찾을수 없다고 나오는데 Controller나 JSP에서는 정상적으로 출력이 잘 됩니다....
설정을 다르게 해야 하는 부분이 있는건가요?
다음과 같이 설정해서 사용하고 있습니다.
XML 정의 부분
<bean id="messageSource"
class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
<property name="basenames">
<list>
<value>classpath:messages/messages</value>
</list>
</property>
<property name="cacheSeconds" value="0" />
</bean>
A
안녕하세요. 최재완님.
ExceptionTransfer 자체에서는 message key를 호출하는 부분은 없고, 아마도 processException() 메소드를 통해 message key를 프로젝트에서 지정하여 호출하신 것 같습니다.
이 경우는 processException() 메소드 상에 지정된 message key가 messageSource 설정 상의 basenames에 있는 메시지 properties 파일 내에 존재해야만 합니다.
즉, 응용 부분에서 특정 Exception에 대해서 메시지화 하시려면 messageSource 상에 지정된 properties 파일 내에 해당 message key와 함께 실제 메세지를 정의하셔야 합니다.
그럼, 즐거운 하루되십시오.
감사합니다.
ExceptionTransfer 자체에서는 message key를 호출하는 부분은 없고, 아마도 processException() 메소드를 통해 message key를 프로젝트에서 지정하여 호출하신 것 같습니다.
이 경우는 processException() 메소드 상에 지정된 message key가 messageSource 설정 상의 basenames에 있는 메시지 properties 파일 내에 존재해야만 합니다.
즉, 응용 부분에서 특정 Exception에 대해서 메시지화 하시려면 messageSource 상에 지정된 properties 파일 내에 해당 message key와 함께 실제 메세지를 정의하셔야 합니다.
그럼, 즐거운 하루되십시오.
감사합니다.