2016-03-07 1 views
0

В моем проекте, я использую Resorce пакет для отображения нескольких языков, все в порядке, за исключением того, что не может отображать значения в заполнителе:Ресурс отображения расслоения неправильно UTF-8 символов в форме-Закончено Месте: ввод тег

<label> 
    <spring:message code="home.address"/> 
</label> 
<spring:message code="home.street" var="bdstreet"/> 
<form:input id="txtstreet" class="form-control" path="address.street" placeholder="${bdstreet}" /> 
<form:errors path="address.street" cssClass="error" /> 

Английский дисплей в порядке, но VietNamese неверен. Моя конфигурация:

<beans:bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> 
    <beans:property name="basenames"> 
     <beans:list> 
      <beans:value>language/home</beans:value> 
     </beans:list> 
    </beans:property> 
</beans:bean> 
<mvc:interceptors> 
    <mvc:interceptor> 
     <mvc:mapping path="/**" /> 
     <beans:bean id="localeChangeInterceptor" 
      class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor"> 
      <beans:property name="paramName" value="lang" /> 
     </beans:bean> 
    </mvc:interceptor> 
</mvc:interceptors> 

<beans:bean id="localeResolver" 
    class="org.springframework.web.servlet.i18n.CookieLocaleResolver"> 
    <beans:property name="cookieName" value="lang" /> 
    <beans:property name="defaultLocale" value="vn_VN" /> 
</beans:bean> 
<!-- End Resource Bundle --> 

Vietnamese incorrect English is ok

+0

Можете ли вы предоставить образец из вашего ресурса сообщения? Кажется, вы сохраняете строки в закодированном состоянии. –

ответ

0

Да, я нашел свою проблему.

Я только что изменил плагин BunderResource, чтобы отформатировать файл свойств. И теперь он работает.

(я использовал UNIKEY с «NCR Decimal» до и отобразить его неправильно в положении PlaceHolder в)

Я воссоздал свойства файла с BunderResource плагином: add Plugin to edit properties files

Этот плагин будет переформатировать для меня. enter image description here результат: enter image description here @Ken Беков, спасибо вам помочь :) Я использую его в этом: Java properties UTF-8 encoding in Eclipse

+0

вы его нашли. Не упоминайте об этом.) –

+0

О, извините, я сейчас отредактирует мой андерсер – Ducthien

0

Попробуйте добавить defaultEncoding недвижимость в ResourceBundleMessageSource декларации:

<beans:bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource"> 
    <beans:property name="basenames"> 
     <beans:list> 
      <beans:value>language/home</beans:value> 
     </beans:list> 
    </beans:property> 
    <beans:property name="defaultEncoding" value="UTF-8"/> 
</beans:bean> 

Кроме того, убедитесь, что файл хранится в utf-8 кодировке.

О заполнителях. Кажется, что вы храните строки в закодированном состоянии. Это означает, что когда вы укажете его в html, браузер автоматически расшифрует строки. Но когда вы покажете его в заполнителях, браузер ничего не сделает и покажет их как есть. Решение, не кодируйте укусы в вашем ресурсе. Просто введите строки с обычными буквами. Пример:

simple.string=Qu&#7889;c Gia // now you store in this format 

simple.string=Quốc Gia // you should store in this format 
+0

Это все еще не работает :( Все, что отображается, это нормально, только у заполнителя проблемы. Не знаю почему. – Ducthien

+0

@Ducthien Я обновил ответ о заполнителях –

+0

Я пробовал, но когда я показываю неправильный формат, это автоматический изменить на английский язык – Ducthien

Смежные вопросы