Displaytag + acentos no formulário  XML
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Autor Mensagem
Nykolas Lima
Virtual Machine Man
[Avatar]

Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline

Tenho um formulário com um input que serve de filtro e uma listagem dos resultados em baixo utilizando displaytag.

O problema é que quando filtro com algum texto que contenha acento, o displaytag monta a baseUrl com caracteres do tipo: "%c3%a7" (que corresponde ao "ç").

Como posso ajustar isso? Meu vraptor esta configurado para utilizar ISO-8859-1.


E assim está minha jsp com o problema de acentos:


O input "applicationFilter.name" é o que da o problema quando digito acentos e tento ordenar a lista do display tag.
A url que o displaytag monta é a seguinte:


E na minha controladora, o atributo name chega desta maneira:
Aplica%C3%A7%C3%A3o

Blog: http://nykolaslima.wordpress.com
[WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

os arquivos jsp estão com o encoding iso-8859-1?

tenta colocar o <%@page no começo da página falando o encoding tb.
(vc consegue um exemplo disso dando um new >> JSP no eclipse)

--
Caelum
www.caelum.com.br

Nykolas Lima
Virtual Machine Man
[Avatar]

Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline

Lucas Cavalcanti wrote:os arquivos jsp estão com o encoding iso-8859-1?

tenta colocar o <%@page no começo da página falando o encoding tb.
(vc consegue um exemplo disso dando um new >> JSP no eclipse)


Lucas,

Seguindo o que você falou, colocando o encoding iso-8859-1 na jsp e na configuração do vraptor resolveu o problema.

Pelo que pesquisei, vi que utilizar UTF-8 seria melhor por aceitar todos tipos de caracteres, sendo assim alterei todas as configurações(jsps e web.xml) para UTF-8. Mas com está configuração ao ordenar a lista do DisplayTag os acentos eram transformados em caracteres "malucos".

Pesquisei na internet(sem querer fechei o site e não me lembro a fonte) e o problema também está na configuração do Tomcat. A partir da versão 5 do tomcat, o padrão de encoding das URIs não é UTF-8.
Para configurar isto basta abrir o arquivo server.xml e configurar a tag <Connector> com o atributo "URIEncoding" para UTF-8.


Pronto, resolveu meu problema. Estou utilizando UTF-8 em toda a aplicação.


Indo para outro problema, Lucas você uma maneira de efetuar o mesmo que o AjaxTags só que utilizando JQuery? O AjaxTags utiliza o Prototype, e eu não gostaria de manter as duas libs de javascript na aplicação.

[]'s

Blog: http://nykolaslima.wordpress.com
[WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

um dos jeitos: baixe o código fonte do AjaxTags, e mude todas as chamadas ajax pro $.ajax do JQuery

não conheço algo equivalente usando jquery... na verdade eu costumo usar os plugins JQuery pra tabelas ao invés do displaytag

--
Caelum
www.caelum.com.br

Nykolas Lima
Virtual Machine Man
[Avatar]

Membro desde: 07/07/2008 13:10:41
Mensagens: 606
Offline

Lucas Cavalcanti wrote:um dos jeitos: baixe o código fonte do AjaxTags, e mude todas as chamadas ajax pro $.ajax do JQuery

não conheço algo equivalente usando jquery... na verdade eu costumo usar os plugins JQuery pra tabelas ao invés do displaytag


Você pode disponibilizar um exemplo de utilização?
É tão fácil de utilizar quanto displaytag?


Codifiquei todo o backend para efetuar a paginação e ordenação de forma automatica com o displaytag. Você acha que consigo reaproveitá-lo facilmente com esses plugins?

Blog: http://nykolaslima.wordpress.com
[WWW]
Lucas Cavalcanti
GUJ Hacker
[Avatar]

Membro desde: 08/07/2007 00:08:14
Mensagens: 6396
Offline

sim, em geral vc gera uma tabela normal html e ele se vira pra fazer paginação e ordenação.

http://datatables.net/

talvez vc só tenha que mudar a forma em que os dados são mostrados, mas não é mto difícil mudar não, vc vai aproveitar a maioria das coisas

--
Caelum
www.caelum.com.br

 
Índice dos Fóruns » Frameworks e Bibliotecas brasileiros
Ir para:   
Powered by JForum 2.1.8 © JForum Team