Mensagens enviadas por: TiagoTC
Índice dos Fóruns » Perfil de TiagoTC » Mensagens enviadas por TiagoTC
Autor Mensagem
Estou com problemas quando envio dados em um formulário via POST. Todos os campos de texto vão normalmente (inclusive com os caracteres especiais), mas no textarea os caracteres especiais não passam adequadamente!

Segue a página JSP:



Estou usando o seguinte filtro também:


public class Filtro_UTF_8 implements Filter
{
private String encoding;

public void init(FilterConfig config) throws ServletException {
this.encoding = config.getInitParameter("encoding");
}

public void destroy() {
}

public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws IOException, ServletException {

//System.out.printf("FILTRO - Passou pelo filtro UTF-8!!!\n");
request.setCharacterEncoding(encoding);
response.setCharacterEncoding(encoding);
chain.doFilter(request, response);
}
}


<filter>
<display-name>Filtro_UTF_8</display-name>
<filter-name>Filtro_UTF_8</filter-name>
<filter-class>Filtro_UTF_8</filter-class>
<init-param>
<description>filtro para codificação dos caracteres</description>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Filtro_UTF_8</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

O detalhe é que, se eu tiro o filtro, o textarea passa a exibir os caracteres especiais corretamente, mas os campos de texto (<input type="text") passam a mandar o conteúdo de forma errada!!! Ou seja, a situação inverte!!

Alguém tem alguma idéia?
mchiareli wrote:vc nao está usando nenhum framework, está escrevendo as paginas e servlets manualmente?


Sim, manualmente. Mas eu estou fazendo isso praticamente como o Struts, com o modelo MVC certinho.
Existe algum framework para ajudar na validação de dados no lado servidor? (Usando JSP)

Ou é preciso escrever tudo na mão mesmo?

Abraços.
Ninguém tem alguma idéia?
thiag_ohe wrote:consegui resolver utilizando <%response.setHeader("Cache-control","no-cache"); %> em cada jsp.. e fazendo a verificação se existe seção

abraço


thiag_ohe, eu coloquei esse código, mas ainda preciso clicar no botão "voltar" várias vezes! Além disso, eu reparei que a página não é recarregada automaticamente. Não era este o seu objetivo? (quando o usuário clicasse em "voltar" no browser ele voltasse E atualizasse a página).

Resumindo: qual foi exatamente o efeito do código acima na sua aplicação? (Em especial, no botão voltar)

Obrigado.
wariows wrote:Se ao invés de fazer um redirect (lado cliente), vc fizer um forward (lado servidor), acho que vc não teria esse problema...
Me veio a cabeça isso mas não tenho certeza.

[]'s


No meu caso eu já havia testado com esses dois métodos. Continuou na mesma, ou seja, ainda precisava clicar várias vezes no botão "voltar".

O problema é que o botão "voltar" dos browsers não reenvia nenhum dado para o servidor.

Ainda sim, tenho certeza que existe alguma solução, pois é fácil encontrar sites que quando você clica em "voltar" no navegador ele faz algo a mais ao invés de simplesmente voltar literalmente para a página anterior...
thiag_ohe wrote:seu problema é bem parecido com o meu... tipo, em sua aplicação quando o usuário faz login e em seguida clica em "voltar", ele volta pra tela de login novamente?

ninguém se candidata a dar a solução? hahha


Sim, quando eu faço o login e clico em voltar ele volta para a tela de login também.

Também estou esperando alguém ajudar! Não é possível que ninguém tenha passado por esses problemas antes...

Eu também quero saber como fazer isso pois estou com um problema semelhante. No meu caso, eu tenho uma página cadastro.jsp, que é acessada através de um link em principal.jsp. Na página cadastro.jsp, o usuário pode fazer um cadastro ( oh!), só que, caso ele tenha preenchido algum campo errado e clica em "Enviar" eu mando ele de volta para a mesma página (cadastro.jsp).

O meu problema é: se o usuário erra, por exemplo, 3 vezes, quando ele clica em "voltar", ao invés de voltar para a página "principal.jsp" ele acaba voltando para a mesma página "cadastro.jsp". É necessário que o usuário clique em voltar 3 VEZES para voltar em principal.jsp!!!

Acho que a solução para o seu problema é a mesma para esse meu. Espero que alguém nos ajude
Estou com problemas em exibir os caracteres especiais ( ç ~ ´ ` ) em uma página JSP corretamente. O início do JSP está assim:



e no meio do JSP, eu imprimo as seguintes informações, vindas de uma base de dados MySQL configuradas em latin1:



Assim que a página é carregada, tanto no Firefox quanto no Opera, os caracteres especiais (acentos, cedilhas...) não aparecem. Em seu lugar aparecem coisas como "éõçõá ì"

A questão é a seguinte: se eu vou (no Firefox) em "View -> Character Encoding" está marcado "Western (ISO-8859-1-)" o que, ao meu ver, está perfeitamente correto pois eu setei esse formato no início do JSP. Porém, se eu mudar (no Firefox) para "UTF-8" e der um reload na página, os caracteres especiais passam a aparecer corretamente!

Assim, eu resolvi mudar, na página JSP, todos os "ISO-8859-1" para "UTF-8". Só que, dessa forma, os caracteres especiais também não apareceram corretamente! Indo (no Firefox) em "View -> Character Encoding" está setado "UTF-8" (como era para ser, pois setei isso no início do JSP). Porém, desta vez, os caracteres especiais não são exibidos corretamente!

Resumindo:

Colocando no cabeçalho JSP tudo ISO-8859-1 e não fazendo nada no Firefox, não funciona (os caracteres especiais são exibidos incorretamente)
Colocando no cabeçalho JSP tudo ISO-8859-1 e alterando manualmente no Firefox para UTF-8 (em "View -> Character Encoding" ), funciona. (os caracteres são interpretados corretamente)
Colocando no cabeçalho JSP tudo UTF-8, não funciona (os caracteres não são exibidos corretamente)

Também já tentei colocar no JSP, os seguintes códigos:



Tentei os dois códigos acima tanto com ISO-8859-1 como UTF-8. Nada funcionou!

Não sei mais o que faço. Alguém tem alguma idéia?
Tenho uma página de login e a seguinte classe:



Assim que o usuário faz o login, eu faço:



Minha pergunta é: na primeira vez que executo essas instruções, o último System.out.printf não deveria imprimir "s: 0" ??? E, a partir da segunda, não deveria imprimir "s: 1" ??? Porém, aqui ele imprimi "s: 1" desde a primeira requisição, como se o usuário já tivesse pego uma sessão anteriormente!

O que estou errando?

Obrigado.
Olá pessoal!

Tenho uma página de login no meu site. Gostaria de ter a segurança do RSA na hora de passar a senha, pois ela está sendo passada "a claro"(sem encriptação) quando a mando pelo método POST. Ou seja, qualquer um que estiver sniffando a rede poderá ver a senha.

Uma solução seria simplesmente configurar o https. O problema é que eu não tenho um certificado feito por uma autoridade certificadora. Eu poderia fazer simplesmente um certificado genérico (que é o que a maioria das pessoas fazem), porém, toda vez que o browser for acessar a página de login, aparece aquela mensagem que "o certificado não foi reconhecido, deseja confiar assim mesmo, blablabla". Eu NÃO quero isso!

Resumindo:

1) Quero criar uma nova chave pública (e sua respectiva privada) no servidor, em cada nova requisição da página de login
2) Passar a chave pública junto com o formulário (página) de login
3) Encriptar com a chave pública passada (no cliente, claro) a senha que o usuário digitar e mandar essa senha encriptada para um JSP
4) O JSP então desencripta a senha com sua chave privada
5) Com a senha em mãos, eu apenas a compara no banco de dados e vejo se o usuário é ou não cadastrado no sistema.

As minhas dúvidas estão nos itens 1, 2 e 3. O resto fica fácil.

Muito obrigado!!!
javando wrote:vc qr um evento que aconteça indepentemente da forma que a aplicação seja fechada?

ou seja,

se o cara fechar com CTRL+C ou se vc der um System.exit(0) não tem como vc fazer mais nada depois que isso acontecer

tanto é que esses dois eventos são os "unicos" (podem aver outros do mesmo tipo) q evitam qualquer execução de um bloco finally que poderia ser executado.




Então, era exatamente isso que eu queria fazer. Tanto se eu forçar meu programa a sair (com CRTLl + C) ou se for por um exit, gostaria de fechar os sockets antes de que o programa terminasse (pois senão as portas ficam abertas por um bom tempo...)

Não tem mesmo nenhuma forma?
Olá!

Gostaria de saber qual evento ocorre instantes antes de um programa Java fechar. Eu escrevi uma aplicação que usa sockets e gostaria de poder fechar todos os sockets abertos assim que o programa for fechar.

Se fosse com interface gráfica eu saberia fazer, pois, ao se fechar uma janela, esta lança o evento "WindowClosing". Daí, bastaria colocar os códigos de fechamento dos sockets ali. Porém, essa minha aplicação não utiliza interface gráfica.

Alguém sabe alguma coisa equivalente ao "WindowClosing" para um programa Java sem interface gráfica?

Desde já adradeço!
Olá! Gostaria de saber como eu faço para minimizar uma aplicação Swing para a "bandeja" no Linux. Eu encontrei como fazer isso apenas no Windows.

Como eu acho que isso depende do ambiente gráfico instalado, ai vaí: o meu é o GNOME 2.24.1

Desde já agradeço!
Olá a todos!

Gostaria de saber se existe algum método que é sempre chamado ao fecharmos uma JFrame (como aquele que existem em Applets...). Se alguém puder me dar um pequeno exemplo também.

Fiz uma busca aqui e não encontrei nada...

Obrigado!
 
Índice dos Fóruns » Perfil de TiagoTC » Mensagens enviadas por TiagoTC
Ir para:   
Powered by JForum 2.1.8 © JForum Team