SpringとSpringMobile拡張機能を使用して Web サイトを構築しています。専用のモバイル (またはタブレット) ビューが利用できない場合は常に「通常の」(デスクトップ サイト) ビューが提供されるように、とを使用して を構成しましLiteDeviceDelegatingViewResolver
た。mobilePrefix = m/
tabletPrefix = t/
enableFallback = true
このサイトには、いくつかのセクションとサブセクションがあります。たとえば、製品セクションとその中にいくつかのカテゴリがあります。現在、Productsのランディング ページがないため、ユーザーを最初のCategoryにリダイレクトします。つまり、 へのリンク/products
がクリックされると、対応するメソッドが( を返すことによって)@Controller
にリダイレクトします。次に、 にマップされたメソッドが( を返すことによって) ビューを提供します。/products/category1
"redirect:/products/category1"
/products/category1
"viewname"
これは、デスクトップ サイトを使用する場合に期待どおりに機能します。しかし、モバイル サイトでは、 を参照しようとすると、 SpringMobile によって/products
自動的に にリダイレクトされます (これは問題ありません) が、その後動作を開始し、最終的に にリダイレクトされるのではなく、奇妙なことに にリダイレクトされます。/m/products
@Controller
/m/products/category1
/m/products/m//products/category1
なぜこれが起こっているのか、そして期待される動作を達成する方法についてのアイデアはありますか?
PS: に直接移動すると/m/products/category1
、デスクトップ ビュー (フォールバック) が適切に表示されます。