スプリングモバイルタイルとapacheタイルを使用して新しいアプリケーションをセットアップしました。これらのタイル記述子を使用して、ターゲットプラットフォーム間でビューコンポーネントを再利用できるようにします。誰かがすでにこれを行っており、アプリケーションを構造化するための最良の方法であるかどうか疑問に思っています。過去にタイルを操作すると、タイル記述子がすぐに追加され、モバイルとタブレットがミックスに追加され、簡単に2倍の数になる可能性があります。
WEB-INF/layout/tiles.xml
これまでのところ、この領域に3つのレイアウトを持つマスタータイル定義があります。
<tiles-definitions>
<definition name="layoutStandard" template="/WEB-INF/layout/standard.jsp"/>
<definition name="layoutMobile" template="/WEB-INF/layout/mobile.jsp"/>
<definition name="layoutTablet" template="/WEB-INF/layout/tablet.jsp"/>
</tiles-definitions>
そして、定義を表示します。
<tiles-definitions>
<definition name="home" extends="layoutStandard">
<put-attribute name="body" value="/WEB-INF/views/home.jsp" />
</definition>
<definition name="home.mob" extends="layoutMobile">
<put-attribute name="body" value="/WEB-INF/views/home.mob.jsp" />
</definition>
<definition name="home.tab" extends="layoutTablet">
<put-attribute name="body" value="/WEB-INF/views/home.tab.jsp" />
</definition>
</tiles-definitions>
私は構成mobileSuffix
し、tabletSuffix
反対しLiteDeviceDelegatingViewResolver
ているので、コントローラーに大きな頭痛の種はありませenableFallback
ん。これは、モバイルビューの定義を提供しない場合でもうまく機能するように設定されています。
タイル構成で同様のことを行う方法はありますか?つまり、ビュー名がで終わる場合は、それを複数回定義する代わりに.mob
使用しますか?layoutMobile