Habilitar Azulejos DEVMODE como DEVMODE puntales para recargar tiles.xml con cada solicitud

StackOverflow https://stackoverflow.com/questions/2412604

  •  18-09-2019
  •  | 
  •  

Pregunta

¿Se Apache azulejos tienen un devMove como puntales que vuelva a cargar el archivo tiles.xml con cada solicitud? Si es así, ¿cómo se puede activar?

¿Fue útil?

Solución

He baldosas utilizadas, pero nunca he intentado volver a cargar dinámicamente.

Sin embargo, esta página: http://tiles.apache.org/tutorial/configuration. html

dice:

    Load the Tiles filter. It is useful if your definition files can be changed and you periodically need to reload them. 

Otros consejos

Esta es otra configuración de trabajo que utiliza oyente en lugar de filtro. (Desde Tiles 2.1.2)

En web.xml:

<context-param>
  <param-name>org.apache.tiles.definition.dao.LocaleUrlDefinitionDAO.CHECK_REFRESH</param-name>
  <param-value>true</param-value>
</context-param>
<listener>
  <listener-class>org.apache.tiles.web.startup.TilesListener</listener-class>
</listener>

A continuación se ha trabajado para mí el uso de baldosas 2.2.2 dentro del contenedor de servlets.

....
import org.apache.tiles.definition.DefinitionsFactory;
import org.apache.tiles.definition.UnresolvingLocaleDefinitionsFactory;
import org.apache.tiles.definition.dao.ResolvingLocaleUrlDefinitionDAO;
import org.apache.tiles.impl.BasicTilesContainer;
import org.apache.tiles.servlet.context.ServletUtil;

//When using SimpleTilesListener =>  BasicTilesContainer is returned
//When using StrutsTilesListener => CachingTilesContainer is returned which extends BasicTilesContainer
BasicTilesContainer tilesCont = (BasicTilesContainer) ServletUtil.getContainer(ServletActionContext.getServletContext());

DefinitionsFactory defFact = tilesCont.getDefinitionsFactory();
Field field= UnresolvingLocaleDefinitionsFactory.class.getDeclaredField("definitionDao");
field.setAccessible(true);
ResolvingLocaleUrlDefinitionDAO rludDAO = (ResolvingLocaleUrlDefinitionDAO)field.get(defFact);
rludDAO.refresh();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top