2012-05-18 2 views
0

폼을 표시하고 등록 정보 파일에서 메시지를로드하는 컨트롤러가 있습니다. 나는 ReloadableResourceBundleMessageSource을 확장하고 그것을 DatabaseMessageSource이라고 불렀다. 이제 데이터베이스에 메시지가 있으면 proeprties 파일에있는 메시지를 기본값으로 사용하지 않습니다. Link to exampleMessageSource에 세션 변수 전달

내 데이터베이스 조회는 getCode(companyId, code)과 같이 호출됩니다. 위의 예제가 작동하도록하려면 companyId에 대해 1을 전달했습니다.

세션에있는 회사 ID를 DatabaseMessageSource으로 전달하여 해당 회사의 올바른 메시지를 가져올 수 있습니다. 아무도 내가 이것을 성취 할 수있는 방법을 알고 있습니까?

답변

2

이를 사용하는 점에서 현재 HttpSession을 얻을 수 있습니다

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes(); 
HttpSession session = attr.getRequest().getSession(); 

그런 다음 거기에서 당신의 속성을 얻을.

+0

정말 고마워요. 완벽하게 일했습니다. – blong824