Hominis tota vita nihil aliud quam ad mortem iter est.
[Toda la vida de los hombres no es más que un camino hacia la muerte]
Séneca

[Struts] - Configuración de Struts

Para que nuestra aplicación web utilice Struts debemos declarar la ActionServlet de Struts en nuestro fichero /WEB-INF/web.xml. Debemos declarar los parámetros de configuración de esta Servlet, y debemos asociarla a las direcciones URL que utilizaremos para invocar nuestras acciones (clases Action). Típicamente se asocia a las extensiones .do.

Un ejemplo sería:

/WEB-INF/web.xml

<web-app>
  <!– Standard Action Servlet Configuration (with debugging) –>
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>2</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>2</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
  </servlet>

  <!– Standard Action Servlet Mapping –>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

  <!– Struts Tag Library Descriptors –>
  <taglib>
    <taglib-uri>/tags/struts-bean</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
  </taglib>
  <taglib>
    <taglib-uri>/tags/struts-html</taglib-uri>
    <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
  </taglib>
  <taglib>
    <taglib-uri>/tags/struts-logic</taglib-uri>
    <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
  </taglib>
  <taglib>
    <taglib-uri>/tags/struts-nested</taglib-uri>
    <taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
  </taglib>
  <taglib>
    <taglib-uri>/tags/struts-tiles</taglib-uri>
    <taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
  </taglib>
</web-app>

 

Podemos obtener información más detallada sobre el fichero web.xml aquí.

Ahora debemos configurar la Servlet, para lo cual editaremos el fichero struts-config.xml. Típicamente declaramos los pool de conexiones, los formularios, las excepciones, los destinos, las acciones y los mensajes.

Una descripción más detallada aquí.

Technorati Tags: ,

4 Comentarios hasta el momento »

  1. jesus dijo

    19 de June del 2007 a las 4:53 pm

    Tengo una pregunta, yo tengo mi struts.xml pero esta convitiendose en una bestia imposible de manejar. Seria posible repartir su contenido en diferentes struts.xml???

    Gracias

  2. yoyoooyoy dijo

    20 de June del 2007 a las 11:52 am

    La respuesta es .

    En tu fichero web.xml declaras el ActionServelet de Struts, y uno de los parámetros que le pasas es config, es decir dónde encontrar su archivo de configuración, el struts-config.xml.

    En lugar de pasarle un archivo XML, le pasas una lista de archivos separados por coma, como :
    /WEB-INF/config/struts-config-usuarios.xml, /WEB-INF/config/struts-config-coches.xml

    Esta respuesta es aplicable al resto de ficheros XML de configuración de otros frameworks, como Struts-validator, Spring, iBATIS…

    Muchas gracias por tu pregunta, muy interesante. Cuando pueda escribiré un post sobre el tema.

  3. Lycka Bonita » Blog Archive » Fragmentar Ficheros de Configuración de Frameworks dijo

    8 de November del 2007 a las 1:54 pm

    [...] partir del comentario de Jesús (mil agradecimientos), por fin he sacado tiempo para escribir este [...]

  4. yoyoooyoy dijo

    26 de February del 2008 a las 1:57 pm

    En concreto, a partir de Struts 1.1 se puede; todos los ficheros deben cumplir con la DTD de los ficheros struts-config y tener un formato XML válidos.

    Además si se encuentran dos declaraciones iguales en dos o más ficheros, se toma la declarada en último lugar.

    Otro matiz es que a partir de Struts 1.1 es posible subdividir la aplicación web en varias subaplicaciones o módulos. Así se puede facilitar el trabajo de distintos equipos sobre una misma aplicación. Cada módulo debe de estar definido por uno o más archivos de configuración de Struts.

    Hablaré más de módulos en otro post : [Struts] - Aplicaciones modulares

Comentarios RSS · TrackBack URI

Dejanos tu Comentario

Nombre: (Requerido)

E-Mail: (Requerido)

Sitio WEB:

Comentario:

Comenta