Spring MVC PathVariable İle Nokta İçeren Değerlerin Taşınması

Spring RequestMapping tanımlarken
/somepath/{variable}
gibi bir tanımlama yapıldığında
/somepath/var1.var2
gibi bir istek sonucunda controller metodumuza gelen variable değeri "var1" olarak nokta karakterinden sonrası atılmış olarak gelecektir. Bu durumu ortadan kaldırmak için
/somepath/{variable}/
gibi sonlandırıcı / karakterini de ekleyip kullanmak gereklidir. Ama bazı durumlarda sonraki / karakterinin eklenmemesinin gerektiği ya da eklenemediği durumlar oluşabiliyor. Bu durumda da RequestMapping tanımında value değerine geçilmesi gereken parametre
/somepath/{variable:.+}
şeklinde set edilmesi gerekir. Burada bu path için gelecek page.jsp gibi değerlerde de jsp kısmının aktarılacağı ya da /somepath/var1.var2.var3 gibi bir istek sonucu variable değerinin "var1.var2.var3" olarak geleceği unutulmamalıdır.
Written on April 26, 2014