¡La versión 2.0 de Play ya está lista! Ayúdanos a traducir la documentación de la útlima versión y sigue nuestro progreso.

Manuales, tutoriales & referencias

Consulte

Contenidos

Elija la versión

Buscar

Busque con google

Libros

Módulos de Play! framework

Una aplicación de Play puede estar compuesta por múltiples módulos. De esta manera, puede reutilizar componentes de una aplicación entre varias aplicaciones, u organizar una aplicación compleja en varias aplicaciones más simples.

¿Qué es un módulo?

Un módulo es simplemente una aplicación estándar de Play. Sin embargo existen algunas diferencias en la manera en que se cargan los recursos de un módulo:

  • Un módulo no tiene un archivo conf/application.conf.
  • Un módulo puede contar con un archivo de rutas en conf/routes, pero estas rutas no serán cargadas de manera automática por el framework.
  • Todos los archivos son primero buscados en el aplicación principal, y luego en los archivos de los módulos cargados.
  • Un módulo puede contener código java distribuido como un archivo JAR en la carpeta module/lib.
  • Un módulo puede incluir su propia página de documentación.
  • TODO en un módulo es opcional.

Puede crear un módulo con el comando play new-module.

Cómo cargar un módulo desde una aplicación

Los módulos son automáticamente cargados desde el directorio /modules de la aplicación principal. Tambien pueden utilizar el sistema de administración de dependencias para cargar automáticamente los módulos de su aplicación.

Cargar las rutas por defecto de un módulo

Un módulo puede proveer un archivo routes con las rutas por defecto. Puede cargarlas en el archivo routes de la aplicación principal de la siguiente manera:

# Importar las rutas por defecto del módulo CRUD
GET     /admin	     module:crud

Puede incluso cargar las rutas de todos los módulos disponibles:

GET     /	     module:*

Agregar documentación a un módulo

Puede agregar una página de documentación a un módulo simplemente creando un archivo documentation/manual/home.textile dentro de la carpeta del módulo. Utilice la sintaxis de los archivos Textile, tal como lo hace play para su propia documentación en ${play.path}/documentation/manual/.

Si está ejecutando una aplicación de Play que utiliza uno o más módulos con documentación, entonces la documentación local de play que puede consultar en http://localhost:9000/@documentation incluirá los correspondientes links a las páginas de su documentación en la barra lateral bajo el rótulo de Installed Modules.

Utilizando el repositorio de módulos

El repositorio de módulos cuenta con todos los módulos que han sido contribuidos por la comunidad. Un módulo puede tener múltiples versiones. Debe verificar la documentación del módulo para saber qué versión corresponde a la versión del framework que actualmente está utilizando.

También puede consultar el repositorio de módulos mediante el comando play list-modules.

gbo-mac:~ guillaume$ play list-modules
~        _            _ 
~  _ __ | | __ _ _  _| |
~ | '_ \| |/ _' | || |_|
~ |  __/|_|\____|\__ (_)
~ |_|            |__/   
~
~ play! 1.2, http://www.playframework.org
~
~ You can also browse this list online at http://www.playframework.org/modules
~
~ [bespin]
~   Bespin online editor
~   http://www.playframework.org/modules/bespin
~   Versions: 1.0, 1.0.1
~
~ [cobertura]
~   Cobertura
~   http://www.playframework.org/modules/cobertura
~   Versions: 1.0
...

Puede instalar un módulo de manera local utilizando en comando play install {module}-{version}. Al instalar un módulo localmente podrá utilizarlo desde múltiples aplicaciones sin tener que instalar una nueva copia en cada aplicación. Esto es útil para módulos grandes que se comportan como extensiones al propio framework más que como extensiones a su aplicación.

Por ejemplo, para instalar el módulo que provee soporte para Scala, utilice:

play install scala-head

Por convención, la versión head es la versión inestable del módulo. Puede instalar la versión por defecto de un módulo omitiendo especificar la versión. Por ejemplo:

play install scala

Los módulos instalados de esta manera son descargados y grabados en la carpeta /modules del directorio de instalación del framework.

Puede cambiar el directorio de instalación utilizando la opción --path:

play install gwt --path=my-project

Contribuyendo con un nuevo módulo al repositorio

Prerequisitos

Para registrar un nuevo módulo debe cumplir con los siguientes requisitos:

  1. Una cuenta de Google, para poder enviar un mensaje a la lista de discusión de Play.
  2. Una cuenta OpenID para ingresar como desarrollador (puede utilizar su cuenta de Google)
  3. Un nombre para el módulo que respete la expresión regular [a-zA-Z]+.
  4. El módulo debe incluir su propia documentación.
  5. Una página web donde se encuentre disponible el código del módulo así como algún medio para reportar errores, por ejemplo un proyecto en GitHub, Google Code or Launchpad.

Registrando el módulo

Para poder utilizar su cuenta de Google como su OpenId, necesita descubir el URL completo de la siguiente manera:

  1. Diríjase a http://www.playframework.org/modules, en Developer login ingrese https://www.google.com/accounts/o8/id y haga click en el botón Login.
  2. Ingrese utilizando su cuenta de Google.
  3. Anote el URL completo de su cuenta OpenId que se encuentra debajo de Developer login, por ejemplo https://www.google.com/accounts/o8/id?id=BItOawk7q69CFhRarQIo

Envíe un mensaje solicitando registrar su nuevo módulo a la lista de discusión de Play. Por ejemplo:

Subject: Module registration request: {module name}
 
Module name:
jqueryui
 
Display name:
jQuery UI
 
Description:
Working examples of jQuery UI widgets, integrated with a Play application.
 
Project home page:
https://github.com/hilton/jqueryui-module
 
OpenID:
https://www.google.com/accounts/o8/id?id=BItOawk7q69CFhRarQIo

Una vez que su módulo haya sido registrado, puede publicar una versión.

Publicando su módulo

Para publicar su módulo:

  1. especifique la versión de su módulo en la primera línea del archivo conf/dependency.yml, por ejemplo self: play -> jqueryui 1.0
  2. compile el módulo con el comando play build-module
  3. ingrese a http://www.playframework.org/modules bajo el rótulo Developer login
  4. navegue hasta la página de su módulo, a través del link en http://www.playframework.org/modules/developers bajo el rótulo Your modules
  5. Suba el archivo ZIP situado en la carpeta dist/ de su módulo, utilizando el fomulario bajo el rótulo de Manage module releases

Por supuesto que puede utilizar la lista de discusión de Play para proveer ayuda y compartir información y novedades acerca de su trabajo.

Próximos pasos

Aprenda a gestionar eficientemente sus módulos utilizando la herramienta de Administración de dependencias.