Las unidades individuales (valga la redundancia) de configuraciones en GWT son archivos XML llamados módulos. Un módulo reúne todos los datos de configuración que tu proyecto GWT necesita, es decir:
- Módulos heredados
- Un nombre de clase; esto es opcional, aunque cualquier módulo referido a un HTML debe tener al menos una clase entry-point especificada.
- Entradas a los source paths
- Entradas a los public paths
Clases entry-point
Un módulo entry-point es cualquier clase que es asignable a EntryPoint y que puede ser construida sin parámetros. Cuando un módulo es cargado, cada clase entry point es instanciada y el método EntryPoint.onModuleLoad() es llamado.
Source Path
Los módulos pueden especificar qué subpaquetes contienen código fuente traducible, provocando que el paquete nombrado y sus subpaquetes sean añadidos al source path. Solamente los archivos encontrados en el source path son candidatos para ser traducidos a JavaScript, haciendo posible que se mezclen códigos fuentes del lado del cliente (client-side) con los del lado del servidor (server-side) en el mismo classpath sin ningún tipo de conflicto.
Cuando un módulo hereda de otro, sus source path son combinados así que cada módulo tendrá acceso al código fuente traducible que requiera.
Public path
Los módulos pueden especificar qué subpaquetes son públicos, provocando que el paquete nombrado y sus subpaquetes sean añadidos al public path. Cuando compilas tú aplicación a JavaScipt, todos los archivos que pueden ser encontrados sobre tu public path son copiados al directorio de salida de los módulos. El efecto en la red es que las URLs visibles al usuario no necesitan incluir un nombre de paquete completo.
Cuando un módulo hereda de otro módulo, sus public paths son combinados así que cada módulo tendrá acceso al recurso estático que requiera.
Especificaciones
- Formato de módulos XML
Los módulos son definidos en XML y situados dentro de la jerarquía de paquetes de tu proyecto - Inclusion Automática de paquetes
Los módulos contienen referencias a archivos JavaScript y CSS externos, causando que estos sean cargados cuando el módulo mismo es cargado. - Filtrado de paquetes públicos
Filtra archivos dentro y fuera de tu public path para evitar la publicación accidental de archivos.

0 comentarios:
Publicar un comentario en la entrada