2014-04-22 2 views
0

웹 프로젝트의 현지화를 지원하려면 프로젝트에서 요구 사항이 있습니다.struts1의 현지화

프로젝트는 사용자에게 서비스를 제공하는 웹 응용 프로그램입니다.

Struts 1.2를 기반으로합니다.

요구 사항 :. 레이블에서 로그인 한 사용자에 따라 다를 수 있습니다 즉, JSP 페이지의 레이블은 사용자의 취향에 따라 제어 할 수있는 사용자가 그/그녀가 원하는 것을 레이블의 텍스트를 변경할 수

보다.

Struts 1.2에서 어떻게하면됩니까?

Struts i18n에 대해 알고 있지만 로캘을 기반으로합니다.

각 사용자마다 별도의 속성 파일을 만드는 것이 좋습니다. Struts 1.2에서 JSP의 레이블을 표시하는 데 동일한 등록 정보 파일을 사용하려면 어떻게해야합니까?

도와주세요.

답변

0

단일 속성 파일에서 사용자 이름이 다른 여러 리소스 ID를 가질 수 있습니다. 예를 들어

:
user1.title = 사용자 2

에 대한

user2.title = 제목 User1의 제목 및 콩 동적 키를 만듭니다 메시지가 사용자 loggedin에 따라 달라집니다.

에서

스트럿 - config.xml에 JSP에서

<message-resources parameter="com.struts.MessageResource" key="appResource"></message-resources> 

:

<% 
String username= (String) request.getAttribute("username"); 
%> 
<bean:message bundle="appResource" key="<%= username + ".title"%>" /> 

대신 자신 만의 템플릿을 생성하여, 사용자의 환경 설정을 제어 할 수 있습니다, 환경 설정의 사용자에 대한 다른 레이블을 갖는 그들을 사용하십시오. 이렇게하면 모든 신규 사용자에 대해 자원 ID를 추가 할 필요가 없습니다.

+0

답장을 보내 주신 @Karthik에게 감사드립니다. 다른 속성 파일을 사용하면 유지 관리가 더 쉽습니다. 또한 사용자에게 환경 설정을 저장하는 프런트 엔드 화면을 제공 할 수도 있습니다. 1 가지 더 ..이 MessageResource 속성 파일의 위치를 ​​전쟁이나 병과 다를 수 있습니까? – Maverick

+0

추가 :이 MessageResource 등록 정보 파일을 별도의 위치에 저장할 수 있습니다. – Maverick

+0

자원 번들을 사용하여 다른 위치에서 자원 ID를 읽는 사용자 정의 struts-tag를 작성할 수 있습니다. – Karthik