JBoss Seam intenta minimizar todo lo posible la cantidad de xml necesario para configurar la aplicación.
Sin embargo, parte de la configuración es preferible tenerla en archivos xml, como reglas de navegación o configuración de componentes del framework, para así aislarla del código java y poderla
cambiar sin re-compilar. En otros casos, como los descriptores, es obligatorio tener los archivos xml para cumplir las especificaciones.
Vamos a ver los archivos de configuración que podemos encontrarnos en un proyecto Seam, su localización y cometido.
- *-ds.xml: Contiene los par ́metros de conexión a la base de datos. Este archivo debe desplegarse en el directorio «deploy» de JBoss
- seam.properties: Este archivo debe estar presente obligatoriamente (aunque esté vacío) en la carpeta raíz del archivo jar que va a desplegarse o en la carpeta classes del archivo war.
Este archivo se usa para configurar las propiedades de los componentes.
components.xml: Puede aparecer en tres lugares; el directorio «META-INF» del archivo jar, el directorio «WEB-INF» del archivo war, o cualquier directorio que contenga clases anotadas con @Name. En él se declaran y configuran componentes. - components.properties: Especifica el valor de variables que pueden usarse en el archivo components.xml, como @debug@. Estas variables se reemplazan cuando se despliega la aplicación.
- persistence.xml: Se sitú en el directorio «META-INF»» del archivo jar y en él se declaran las unidades de persistencia.
- security.drl: En él se declaran las reglas de autorización del subsistema Drools. Se coloca en la raíz del archivo ear o en el directorio «classes» en el caso de desplegar en un archivo war.
- application.xml: Es el descriptor de despliegue de Enterprise Application Archives y es un archivo estándar en aplicaciones java 2 EE. Se sitúa en el directorio «META-INF» del archivo ear y en él se declaran los módulos de la aplicación y las dependencias.
- ejb-jar.xml: Es el descriptor de despliegue estándar de la especificación EJB. Se coloca en el directorio META-INF del archivo jar, y en Seam contiene la declaración del SeamInterceptor.
- jboss-app.xml: Es el descriptor de aplicación específico de JBoss y se sitúa en el directorio «META-INF» del archivo ear.
- faces-config.xml: Es el archivo de configuración central de JavaServer Faces. Se encuentra en el directorio «WEB-INF» del archivo war.
- pages.xml: Especifica las reglas de navegación. Se encuentra en el directorio «WEB-INF» del archivo war.
- web.xml: Es el descriptor Web estándar especificado en J2EE. Se encuentra en el directorio «WEB-INF» del archivo war.
- import-*.sql: Se coloca en la raíz del archivo jar. Puede contener código sql que será ejecutado cada vez que se despliegue la aplicación
Una aplicación Seam típica tendrá la siguiente estructura de archivos
my-application.ear/ jboss-seam.jar jboss-el.jar jboss-el-api.jar META-INF/ MANIFEST.MF application.xml my-application.war/ META-INF/ MANIFEST.MF WEB-INF/ web.xml components.xml faces-config.xml lib/ jsf-facelets.jar jboss-seam-ui.jar login.jsp register.jsp ... my-application.jar/ META-INF/ MANIFEST.MF persistence.xml seam.properties mi/ paquete/ myapplication/ Clase1.class Clase2.class Clase3.class
0 comentarios