JSF FacesUtils.addErrorMessage quebra de linha

343 views
Skip to first unread message

thiago almeida

unread,
Dec 6, 2006, 3:11:36 PM12/6/06
to jav...@googlegroups.com
Ola Galera,

Quero fazer a quebra de linha de uma string que possui mais de uma frase, como por ex: \n ou <br>...

Atualmente está assim: frase1 frase2 frase3
Preciso que sejá assim:  frase1
                                     frase2
                                     frase3

Tenho mais de uma frase e gostaria de exibir uma abaixo da outra.

Segue abaixo o codigo...

String mensagem = "";
   if (transacaoBean.getVersao().equals("")) {
    mensagem = mensagem + "Campo 'Versão' deve ser preenchido!\n"; ###OBS: utilizei <br> no lugar de \n e não funciona tb.###
   }
   if (transacaoBean.getServico().equals("")) {
      mensagem = mensagem + "Campo 'Serviço' deve ser preenchido!\n";
   }
   if (mensagem != "") {
      FacesUtils.addErrorMessage (mensagem);
   }
     return mensagem;

Esse codigo armazena as mensagem de erro em uma String que será mostrado na tela caso o cliente não preencha os campos,
o problema é que eu coloco todas as frases em uma string, com a utilização do \n ou <br> no final de cada frase, para fazer a quebra de linha entre uma frase e outra mas nenhum desses 2 funciona, \n e <br>

Alguem poderia me ajudar.

Agradeço a Atenção.



Rafael Ponte

unread,
Dec 6, 2006, 5:17:19 PM12/6/06
to jav...@googlegroups.com
Opa,

Na tag h:messages existe um atributo "escape" acho, ele serve para interpretar ou não interpretar
html na sua mensagem, não tenho certeza se este atributo existe, dá uma olhada ae :))
--
Rafael Ponte

luizbarbosa2004

unread,
Dec 7, 2006, 7:35:49 AM12/7/06
to jav...@googlegroups.com
use frases.Split(" ") que cria um array com indice 3.

thiago almeida

unread,
Dec 7, 2006, 8:42:16 AM12/7/06
to jav...@googlegroups.com
Opa,

Na tag <h:messages> não tem o atributo "escape", já tentei isso antes tb...

Valeu.

2006/12/6, Rafael Ponte <rpo...@gmail.com >:

Rafael Ponte

unread,
Dec 7, 2006, 8:50:06 AM12/7/06
to jav...@googlegroups.com
Bem,

No t:messages do Tomahawk tem um atributo chamado "detailFormat" que provavelmente possa
te ajudar :)) Tenta com ele ae.

Bem, na pior das hipóteses você pode jogar sua mensagem no request e exibir na tela em vez de
usar o FacesUtils.addErrorMessage().

Boa sorte!
--
Rafael Ponte

thiago almeida

unread,
Dec 7, 2006, 11:49:10 AM12/7/06
to jav...@googlegroups.com
É, tava pensando nisso, criar um outputText com rendered="false", fazer a validação dos campos na hora do submit e habilitar o output quando for preciso.

Valeu.


2006/12/7, Rafael Ponte < rpo...@gmail.com>:

Rafael Ponte

unread,
Dec 7, 2006, 12:02:17 PM12/7/06
to jav...@googlegroups.com
Isso mesmo,
Não gosto de usar esses metódos paliativos, acho feio, porém temos que fazer as coisas funcionarem né? Hehehe,
Quem não tem cão, caça com gato :))
--
Rafael Ponte

Rafael Rossignol Felipe

unread,
Dec 7, 2006, 12:09:55 PM12/7/06
to jav...@googlegroups.com
e se vc adicionar duas mensagens na ordem correta e colocar o layout como table?
ele vai jogar na celula de baixo

2006/12/7, Rafael Ponte <rpo...@gmail.com >:

thiago almeida

unread,
Dec 8, 2006, 12:08:48 PM12/8/06
to jav...@googlegroups.com
tb não gosto de usar e acho feio tb, mas acabei usando, hehehe, sobre o layout comentado pelo outro rafael, utilizei os layout= list e table, mas tb não deu certo...
então fiz assim...

...::: JSP :::...
                    <h:outputText value="Campo 'Chave' deve ser preenchido!"
                        rendered="false" binding="#{viewController.campoChave}"
                        styleClass="errors" />
                    <h:outputText value="Campo 'Senha' deve ser preenchido!"
                        rendered="false" binding="#{viewController.campoSenha}"
                        styleClass="errors" />

...::: JAVA :::...
    private HtmlOutputText campoChave = new HtmlOutputText();
    private HtmlOutputText campoSenha = new HtmlOutputText();

....
        if (usuarioBean.getChave().equals("")) {
            getCampoChave().setRendered(true); ## habilita o campo/outputtext chave.
        }
        if (usuarioBean.getSenha().equals("")) {
            getCampoSenha().setRendered(true); ##habilita o campo/outputtext senha.
        }


2006/12/7, Rafael Ponte <rpo...@gmail.com>:

Rafael Ponte

unread,
Dec 8, 2006, 12:13:49 PM12/8/06
to jav...@googlegroups.com
Boa :))
É como dizem, "O cliente não quer saber como foi feito, ele só quer ver o 'bixinho' funcionando." =oP
--
Rafael Ponte

thiago almeida

unread,
Dec 11, 2006, 2:49:11 PM12/11/06
to jav...@googlegroups.com
Estou com outro probleminha de quebra de linha, tenho uma String mto grande que vem do banco de dados e essa String ultrapassa o tamanho da panelGrid q é width="700", como faço para forçar a quebra do texto, para que o panelgrid não aumente e passe dos 700px que foi definido...

Ex:a String eh mto grande e gera barra de rolagem, como faço para quebrar ???
Está assim ===>>> DF055660000002209944000000220662200000333088770005555588899001234560006607777777055669000002209944900000220662290000333088779005555588899901234560006697777777Senadora


preciso q sejá assim ==>DF0556600000022099440000002206622000003330887700055
5558889900123456000660777777705566900000220994490000022066229000033308877
9005555588899901234560006697777777Senadora
Quando chegar no final do panelGrid ele faça a quebra automática....


Valeu ....

2006/12/8, thiago almeida < almeida...@gmail.com>:

thiago almeida

unread,
Dec 11, 2006, 3:02:53 PM12/11/06
to jav...@googlegroups.com
Como aconteceu aqui, o gmail fez a quebra da String q estava em uma linha só, ele dividiu a String q estava em uma linha pra quatro linhas, existe algo contrario do nowrap, que force a quebra???

está assim:
textoJuntoNaoTemQuebraDeLinha&NemEspacao&aumenta_o_TamanhoDoWidth
preciso q sejá assim: textoJuntoNaoTemQuebra
                                DeLinha&NemEspacao&
                                aumenta_o_TamanhoDoWidth

valeu

2006/12/11, thiago almeida <almeida...@gmail.com>:

Rafael Ponte

unread,
Dec 11, 2006, 3:04:35 PM12/11/06
to jav...@googlegroups.com
Humm.. acredito que o atributo "wrap" da coluna da tabela cuide disso.
Isso já é CSS/HTML mesmo. Dá um olhada nisso.
--
Rafael Ponte
Reply all
Reply to author
Forward
0 new messages