2013-06-28 2 views
2

Мы сталкиваемся с некоторыми проблемами с кодификацией некоторых «особых» символы, такие как «ã» на работе и поэтому мы меняем весь код, чтобы получить сообщение в формате Unicode от а message.properties файл, как это:Как добавить сообщение из message.properties в catch?

<h:outputLabel value="#{messages['guia.editar.numeroGuia']}" /> 

в свойствах сообщений, которые он содержит:

guia.editar.numeroGuia=N\u00FAmero da Guia\ 

Теперь они работают прекрасно, однако мы должны заменить все стопорные сообщения по той же схеме. Мне нужно как-то импортировать сообщение в блок catch. Может ли кто-нибудь помочь мне с этим?

Этот метод, например:

public List<GuiaAdm> getTodosRegistros() { 
     try { 
      return guiaAdmService.findNoPage(getParametrosPesquisa()); 
     } catch (ServiceException e) { 
      this.messageFacesBean.reportarErro("Não foi possível gerar exportação devido a erro interno na pesquisa."); 
     } 
     return null; 

    } 

Она должна возвращать сообщение: "Нао Foi possível Гераре Exportacao devido в ERRO INTERNO на Pesquisa." однако он возвращает: «NÃ £ o foi possÃ-vel gerar exportaçã o de devido a erro interno na pesquisa». или что-то еще с более странными символами, поэтому мы создали файл для хранения сообщений в формате Unicode. Теперь нам нужно импортировать это сообщение в уловку, может ли кто-нибудь мне помочь?

Мы уже пробовали перейти на unicode или ISO9688 и несколько других, но проблемы не исчезли.

ответ

0

После копания немного я нашел тему, связанную с этим, которая приносит хорошее решение. Ссылка: Use message bundle in Java class with Seam

Решение моего случая было бы:

this.messageFacesBean.reportarErro(Messages.instance().get("message.name"));