Atenção !

Problemas com o formulário !

fechar [x]

Página Inicial

Url Rewrite Filter

24/07/2008 15:25  

Baseado no popular e muito útil mod_rewrite apache, UrlRewriteFilter Java Web é um filtro para qualquer aplicação J2EE Web server, que permite você reescrever URLs antes mesmo de chegar ao seu código. Trata-se de uma ferramenta muito poderosa como o mod_rewrite do Apache. UrlRewriteFilter utiliza um arquivo XML para a configuração, chamado urlrewrite.xml (ele vai para o diretório WEB-INF). A maior parte dos parâmetros são implementados com Expressões regulares. Isso faz com que seja muito poderoso.

Para instalar o url rewrite filter:

Faça o download do zip e extraia-o no seu contexto do diretório ou seja, de modo que urlrewrite.xml vá para o diretório WEB-INF.
Adicione o seguinte código ao seu WEB-INF/web.xml

<filter>
    <filter-name>UrlRewriteFilter</filter-name>
    <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>UrlRewriteFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

Para configurar o seu urlrewrite.xml

Com um parâmetro:

<rule>
    <from>/produtos/([0-9]+)</from>
    <to>/produtos/index.jsp?produto=$1</to>
</rule>
<!--por exemplo, /produtos/1234 será transmitida aos produtos index.jsp?produto=1234.-->

Com dois parâmetros:

<rule>
    <from>/produtos/([0-9]+)/([a-z]+)</from>
    <to>/produtos/index.jsp?produto=$1&amp;categoria=$2</to>
</rule>
<!--por exemplo, /produtos/1234/informatica será transmitida aos produtos index.jsp?produto=1234&categoria=informatica.-->

Para mais de dois parâmetros, devemos utilizar expressão ER. Inserimos o ^ (início da linha) no começo do path, e o $(fim da linha) no fim do path da tag .

<rule>
    <from>^/produtos/([0-9]+)/([a-z]+)/ ([a-z]+)$</from>
    <to>/produtos/index.jsp?produto=$1&amp;categoria=$2&amp;nome=$3</to>
</rule>
<!--por exemplo, /produtos/1234/informatica/teclado será transmitida aos produtos index.jsp?produto=1234&categoria=informatica&nome=teclado.-->

Dentre os principais objetivos deste jar, destaco:
• uso independentemente da tecnologia (JSP, Servlet, Struts, etc.);
• detecção do Navegador (permite reescrever os URLs com base em pedido cabeçalhos HTTP, como usuário-agente ou charset);
• redirecionar para outra URL com base na data/hora;
• reescrever URLs;
• mapeamentos em servlet.

Um exemplo prático de uso dessa ferramenta, encontra-se no novo site da TV Claret, onde a utilizei para o gerenciamento das notícias. Confira em http://www.tvclaret.com.br/noticias

Postado por: Maikon Cezário

Tags: urlrewrite  url amigável  

Comente este Post !

Imagem de Segurança

Portfólio

Paróquia Imaculado Coração de Maria Faculdades Claretianas Rio Claro Editora Ave-Maria Claretiana FM Rio Claro Provedor Claretianas TV Claret Portal Claret Centro Universitário Claretiano Info Claret Pastoral de São Pedro Paróquia de Cascalho Pastoral Vocacional Claretiano São Paulo Perfil Vocacional Colégio Anglo Claretiano Colégio São José Anglo Vestibulares Claretiana FM Batatais
Sobre este blog

Bem-vindo ao blog do Claretiano Web Center, o núcleo de desenvolvimento web de toda Ação Educacional Claretiana

Além de mostrar todo o trabalho desenvolvido pelos webdesigners Diego Magrin e Maikon Cezário, este blog tem como objetivo transmitir muito conhecimento.

© Copyright 2008Tableless   XHTML   RSS