如何将messages.properties中的消息添加到catch?

时间:2013-06-28 19:55:20

标签: java javabeans seam

我们在编写一些“特殊”字符(例如“ã”)时会遇到一些问题,因此我们正在更改所有代码,以便从这样的message.properties文件中以Unicode格式获取消息:

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

在其包含的消息属性中:

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

现在这些工作正常,但是我们需要替换所有catch消息以遵循相同的模式。我需要以某种方式将消息导入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;

    }

它应该返回消息:“Nãofoipossívelgerarexportaçãodeidoa erro interno na pesquisa。”然而它又回来了:“N?£foi possi velgerarexportação devido a erro interno na pesquisa。”或者甚至是陌生人角色的东西,这就是为什么我们创建了以unicode格式存储消息的文件。现在我们需要将此消息导入捕获,任何人都可以帮助我吗?

我们已经尝试过更改为unicode或ISO9688以及其他一些但问题并没有消失。

1 个答案:

答案 0 :(得分:0)

在挖掘了一点之后,我找到了一个与此相关的主题,这带来了一个很好的解决方案。 链接是: Use message bundle in Java class with Seam

我案例的解决方案是:

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