[
https://issues.apache.org/jira/browse/TILES-570?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
NZa updated TILES-570:
----------------------
Affects Version/s: 3.0.x
3.1.x
> Init via listeners and configuring DEFINITIONS_CONFIG via context-param does
> not work as documented
> ---------------------------------------------------------------------------------------------------
>
> Key: TILES-570
> URL: https://issues.apache.org/jira/browse/TILES-570
> Project: Tiles
> Issue Type: Bug
> Components: tiles-core, tiles-servlet
> Affects Versions: 3.1.x, 3.0.1, 3.0.x
> Reporter: NZa
> Labels: DEFINITIONS_CONFIG, config,, location,, tiles.xml,
>
> Please see http://tiles.apache.org/tutorial/configuration.html for some docs
> and go to the section "Load the Tiles listener. Specify it in your web.xml
> file".
> Issue 1:
> The following configuration is invalid because
> org.apache.tiles.web.startup.TilesListener does not exist anymore:
> <listener>
>
> <listener-class>org.apache.tiles.web.startup.TilesListener</listener-class>
> </listener>
> Issue 2:
> Because of Issue 1 I have chosen to use the
> org.apache.tiles.web.startup.simple.SimpleTilesListener for starting the
> Tiles engine (see http://tiles.apache.org/framework/config-reference.html):
> <listener>
>
> <listener-class>org.apache.tiles.web.startup.simple.SimpleTilesListener</listener-class>
> </listener>
> According to the docs this should be possible:
> <context-param>
> <param-name>
> org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
> </param-name>
> <param-value>/WEB-INF/classes/tiles.xml</param-value>
> </context-param>
> But org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG does not
> exist (it was mentioned to be deprecated in older versions of Tiles!).
> Issue 3:
> Because of issue 2 I used
> org.apache.tiles.definition.DefinitionsFactory.DEFINITIONS_CONFIG:
> <context-param>
> <param-name>
> org.apache.tiles.definition.DefinitionsFactory.DEFINITIONS_CONFIG
> </param-name>
> <param-value>/WEB-INF/classes/tiles.xml</param-value>
> </context-param>
> But that does also not allow to load the custom tiles.xml file.
> Issue 4:
> I checked sources and found this in
> org.apache.tiles.factory.BasicTilesContainerFactory (tiles-core-3.0.1.jar):
> /**
> * Returns a list containing the resources to be parsed. By default, it
> returns a
> * list containing the resource at "/WEB-INF/tiles.xml".
> * @param applicationContext The Tiles application context.
> * @return The resources.
> * @since 2.1.1
> */
> protected List<ApplicationResource> getSources(ApplicationContext
> applicationContext) {
> List<ApplicationResource> retValue = new
> ArrayList<ApplicationResource>(1);
> retValue.add(applicationContext.getResource("/WEB-INF/tiles.xml"));
> return retValue;
> }
> As you can see "/WEB-INF/tiles.xml" is hard coded. That's why using the
> context-param has no influence at all. The only valid location is
> "/WEB-INF/tiles.xml" and that's it.
> Would be great if this would be fixed in one of the next releases.
> Also see the docs here:
> http://tiles.apache.org/config-reference.html#org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira