Plugin Xpath

RECU-0126 (Recurso Arquetipo Software)

Descripción

Este plugin permite implementar una serie de reglas en lenguaje Xpath para realizar verificaciones asociadas a los descriptores de ficheros, principalmente ApplicationContext.xml, Web.xml y Faces-config.xml, para asegurar que siguen las buenas prácticas recomendadas de MADEJA.

Características

El plugin permite realizar verificaciones sobre los siguientes conceptos:

  • Internacionalización: Comprobar que se respeta la internacionalización y que se cambia de idioma sin necesidad de cambiar código en la aplicación.
  • Navegación: Deben existir reglas de navegación para la aplicación.
  • Template: La vista está gestionada por el manejador de plantillas de Facelets.
  • Conversores: Comprueba el correcto uso de los conversores en las páginas.
  • Inyección de dependencias: Comprobar que se realiza la inyección de dependencias en base a setters.
  • Tratamiento de excepciones: Comprobar que está establecido, para el manejo de excepciones, el bean que ofrece Spring.
  • Conexión entre JSF y Spring: Comprobar que se realiza la integración con JSF de la forma recomendada.
  • Declaración de objetos: Declarar los objetos dentro del applicationContext para que puedan ser referenciados desde el faces-config.xml.
  • Spring Factory: Comprobar la declaración de la factoría de Spring en el fichero web.xml.
  • Reutilización de Beans: Comprobar que, en la medida de lo posible, se reutilizan las definiciones de beans.
  • Uso de dependency Check: Comprobar que, cuando las propiedades de un bean deban ser asignadas explícitamente, se use dependency-check.

Arquetipo

Para obtener el arquetipo acceda a su ficha en el Catálogo de Software

Despliegue

Para usar el plugin debe seguir las siguientes indicaciones:

  • Compilar e instalar en su repositorio maven el plugin maven que realiza el análisis de las verificaciones xpath.
  • Compilar el plugin sonar para que se genere el fichero sonar-mdjdes-plugin-1.0.jar que deberá copiar a la carpeta extensionsplugins de Sonar. NOTA: se ha probado con sonar 1.11.1.
  • Configurar un proyecto JSF-Spring para las verificaciones.
  • Copiar a una carpeta del proyecto a analizar el fichero de reglas.xml (debe coincidir con lo que se indicará en el pom.xml). NOTA: Esta ruta puede ser absoluta a una carpeta cualquiera de la máquina.
  • Incluir en el pom.xml del proyecto el plugin maven:
<plugin>
                <groupId>es.juntadeandalucia.maven</groupId>
                <artifactId>maven-mdjdes-plugin</artifactId>
                <version>1.0</version>
                <configuration>
                    <outputDirectory>resultadoMadeja</outputDirectory>          
                    <ruleConfigurationFile>src/main/resource/reglas.xml</ruleConfigurationFile>
                     <filesDirectory>src/main/webapp/WEB-INF</filesDirectory>
                </configuration>
</plugin>
  • Es importante configurar correctamente tanto el directorio de salida del análisis (outputDirectory), la localización del fichero reglas.xml en el proyecto y el directorio con los ficheros que van a ser analizados (WEB-INF para el ejemplo).
  • Ejecutar sonar:sonar

Acceder a Sonar y verificar que, en el Dashboard del proyecto, aparece una nueva sección con las verificaciones Xpath de MADEJA.

Capturas

Plugin Xpath