Parse de message bundle com parâmetros direto no jspx

Tempo de leitura: menos de 1 minuto

Fala galera, passando hoje para deixar uma dica rápida.

Esta semana tive a necessidade de realizar o parse de uma message com parâmetros no message.properties. Algo parecido com isto:

[code language=”java”]
lbl_banner_version={0} versão {1}
[/code]

O projeto usa JSF com viewer. Eu ainda não tinha passado pela experiência de fazer parse de uma message com parâmetros direto no jspx. No projeto, só tinha feito parse de messages assim no managed Bean.

Pesquisei em alguns fóruns e encontrei a solução, que por sinal é bem simples.

Bastou alterar a tag <h:outputText />, normalmente usada na aplicação, para <h:outputFormat /> e passar os parâmetros na ordem que a message esperava.

Vejamos um exemplo:

Dado que precisavamos parsear a message a cima no jspx, bastau fazer o seguinte:

[code language=”html”]
<f:loadBundle basename="messagesResources" var="msg"/>

<h:outputFormat value="#{msg.lbl_banner_version}">
<f:param value="#{banner.nomeAplicacao}"/>
<f:param value="#{banner.versaoComercial}"/>
</h:outputFormat>
[/code]

Prontinho!

Para mais informações, consulte o ótimo artivo: JSF 2.0 and Resource Bundles example.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *