Java da url rewriting islemi

URL rewriting basitce url in tekrar yazimi demektir. Bu yontemle örnegin /Demo/index.jsp?id=123&otel=temizel seklindeki bir url i /Demo/otel/123/temizel.html sekline cevirebilirsiniz

Bu konu son zamanlarin populer konularindan biri olmaya basladi. Ozellikle seo (search engine optimization) icin kullanilan bu yontemin java tarafindaki entegrasyonuda oldukca basit. Asagidaki ornekte basit bir implementasyon bulabilirsiniz.


web.xml doyasina asagidaki filter tanimlarini ekliyoruz.

     <filter>
      <filter-name>UrlRewriteFilter</filter-name>
      <filter-class>
       org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
      </filter-class>
      <init-param>
         <param-name>logLevel</param-name>
       <param-value>WARN</param-value>
      </init-param>
     </filter>
     <filter-mapping>
      <filter-name>UrlRewriteFilter</filter-name>
      <url-pattern>/*</url-pattern>
     </filter-mapping>

WEB-INF dizini altinda urlrewrite.xml isimli bir dosya olusturuyoruz. Ornek icerik

     <?xml version="1.0" encoding="utf-8"?>
      <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 2.6//EN" "http://tuckey.org/res/dtds/urlrewrite2.6.dtd">
     
      <urlrewrite>
       <rule>
        <from>/otel/([0-9]+)/(.*).htm</from>
        <to>/faces/index.jsp?id=$1&amp;otel=$2</to>
       </rule>
      </urlrewrite>

Bu konfigirasyonu gore /Demo/index.jsp?id=123&otel=temizel seklindeki bir url /Demo/otel/123/temizel.html seklinde gorunecektir. Ornegi calisir durumda gormek icin asagidaki gibi bir index.jsp olusturabilirsiniz.

     hotel id = <%=request.getParameter("id")%><br/>
     otel = <%=request.getParameter("otel")%>

Ilgili jar dosyasi

Ornek urlrewrite.xml dosyasi

Dec 18th, 2008
  1. engin
    Dec 30th, 2008 at 21:27 | #1

    Moremotion programında bu eklenti kullanılabilirmi acaba
    http://www.moryazilim.com.tr
    saygılarımla

  2. Dec 31st, 2008 at 10:19 | #2

    bir filter oldugundan sorun olacagini dusunmuyorum ama bir deneyin.

  3. hasan
    Jan 7th, 2009 at 13:05 | #3

    engin arkadaşım ben moremotion da denemedim istediğim sonucu alamadım. forumdada çözüm yoktu. yanılmıyorsam moremotion kendisi filte ederek veriyor.

    siz bir çözüm buldunuzmu buldu iseniz bizimle paylaşırmısınız

  4. hasan
    Jan 7th, 2009 at 13:05 | #4

    hasan :
    engin arkadaşım ben moremotion da denedim istediğim sonucu alamadım. forumdada çözüm yoktu. yanılmıyorsam moremotion kendisi filte ederek veriyor.
    siz bir çözüm buldunuzmu buldu iseniz bizimle paylaşırmısınız

  5. engin
    Jan 7th, 2009 at 20:37 | #5

    hayır yapamadım hasan

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>