JSF - Problemas com <f:loadBundle>

3 respostas
gustavodelgado

Em minha aplicação JSF, tenho um arquivo “Bundle.properties” que contém as mensagens que necessito.

Esta aplicação “importa” um outro projeto (ClassLibrary) onde estão minhas classes java com os Beans e outras classes que necessito.

Quando o Bundle.properties está no classpath do projeto Web (JSF), consigo utilizar normalmente as propriedades que ele possui, com a tag:

<f:loadBundle var=“msg” basename=“Bundle”/>

Agora eu gostaria de deixar este arquivo no meu projeto “ClassLibrary” para poder reaproveitá-lo em outras situações.
O problema é que se eu deixá-lo no classpath deste projeto, o comando acima (loadBundle) do projeto Web não encontra seu caminho de jeito nenhum…

Será que o JSF tem alguma restrição quanto a isto? Um arquivo .properties a ser lido não pode estar incluído em um sub-projeto (ou seja em um .jar importado)??? Ou tem alguma outra maneira de informar seu caminho?

Desde já obrigado.

3 Respostas

marcos.junqueira

Porque não cria um properties específico para sua ClassLibrary???

Assim vc pode utilizá-la em outros locais sem precisar do seu projeto web.

Ou seja, tenha um properties pra o projeto web e outro para sua class library :lol:

gustavodelgado

Humm… pode ser, mas por exemplo, o texto dos “labels” dos campos, se eu deixar no properties do ClassLibrary, poderiam ser usados na interface web e em outra eventual interface desktop… sem precisar ter outro properties com conteúdo repetido em cada projeto.

marcos.junqueira

Justamente, nada de conteúdo repetido…

tente passar o pacote completo onde o bundle se encontra tipo seu.pacote.Bundle

Agora a pouco tive uma ideia mirabolante aqui…
vc pode fazer bind de atributos de objetos em seus jsf, então vc pode ter classes descritoras de interface, ou descritor de arquivo properties, para cada chave no properties um atributo… arg… dexa pra lah… acho q preciso melhorar essa ideia… :lol:

Criado 20 de julho de 2007
Ultima resposta 20 de jul. de 2007
Respostas 3
Participantes 2