.toUpperCase

Olá.

Gostaria de saber se existe algum jeito de transformar de uma vez (sem ter q pegar um por um) todos os campos String de uma jsp para letras maiúsculas (upperCase) ?
Tipow, antes msm de jogar no banco… Na própria página ou mesmo na classe action da página.
Ou então comm algum javaScript, na propriedade do textfield msm…

Desde já, agradeço.

Walter

consulta a api em
http://java.sun.com/j2se/1.5.0/docs/api/index.html
mais especificamente java.lang.string
há um método chamado toUpperCase()…

Acho que o Walter conhece String.toUpperCase() :wink: Se interpretei corretamente, a pergunta dele era como transformar todos os parâmetros de uma requisição para maiúsculas, de uma vez só.

A solução mais prática para isso involve um filtro de servlets: Basta escrever um filtro que empacota o ServletRequest para sempre retornar os parâmetros de requisição em maiúsculas, e instalar esse filtro na frente de sua aplicação. A implementação do filtro seria algo assim:

[code]import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletRequestWrapper;
import javax.servlet.ServletResponse;

/**

  • Filtro para retornar todos os parametros de requisição em maiúsculas. A

  • transformação só é feita se os parâmetros forem obtidos através do método

  • {@link ServletRequest#getParameter(String)}. </p> TODO: empacotar os métodos

  • {@link ServletRequest#getParameterMap()} e {@link ServletRequest#getParameterValues(String)}

  • para também retornar sempre os valores em maiúsculas.

  • @author Marcus Brito &lt;mbrito@gmail.com&gt;
    */
    public class UpperCaseFilter implements Filter
    {
    public void init(FilterConfig filterConfig) throws ServletException
    {
    // Nao faz nada
    }

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
    throws IOException, ServletException
    {
    chain.doFilter(new UpperCaseRequestWrapper(request), response);
    }

    public void destroy()
    {
    // Nao faz nada
    }

    private static class UpperCaseRequestWrapper extends ServletRequestWrapper
    {
    public UpperCaseRequestWrapper(ServletRequest request)
    {
    super(request);
    }

     public String getParameter&#40;String s&#41;
     &#123;
         String param = getRequest&#40;&#41;.getParameter&#40;s&#41;;
         return param != null ? param.toUpperCase&#40;&#41; &#58; param;
     &#125;
    

    }
    }[/code]

E como instalar o filtro fica como exercício para o leitor, mas aqui tem uma boa explicação rasteira sobre filtros.


Marcus Brito
Consultor J2EE
mbrito <arroba> gmail <ponto> com

:arrow: Olá!
Na classe String há o método toUpperCase(), ele passa toda a tua String para letras maiúsculas e há o caso contrário que deixa todas minúsculas
toLowerCase().