Details
-
Task
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
None
-
None
-
Apache Tomcat 7.0.42, JSE 1.7.0_45, Windows
Description
In reading the Tiles documentation, it was not obvious to me that including an underscore (_) in my tiles definition filename would cause Tiles to interpret whatever follows the underscore as a locale.
For example, in my TilesConfigurer configuration, I had the following:
<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles3.TilesConfigurer"> <property name="definitions"> <list> <value>/WEB-INF/templates/layouts.xml</value> <value>/WEB-INF/views/base_views.xml</value> </list> </property> </bean>
This caused Tiles, apparently, to assign the Locale "views" to the second definition. This was clearly not what I intended, and the side effect of this was that Tiles discarded the second definition, and my view contained in that definition could not be resolved.
Only after spending some time with a debugger did I discover the code in org.apache.tiles.request.locale.PostfixedApplicationResource that causes this behaviour.
It would be nice if the documentation more clearly warns developers about this so that others do not have to go through the same trouble.