Instalación del servicio de datos REST

Este tema describe cómo instalar el servicio de datos REST de WebSphere eXtreme Scale en un servidor web.

Antes de empezar

Requisitos de software

El servicio de datos REST de WebSphere eXtreme Scale es una aplicación web Java que se puede desplegar en cualquier servidor de aplicaciones que soporte la especificación de servlet Java, Versión 2.3 y un entorno de tiempo de ejecución Java, Versión 5 o posterior.

Se necesita el software siguiente:
  • Java Standard Edition 5 o posterior
  • Contenedor de servlet web, Versión 2.3 o posterior, que incluye uno de los siguientes:
    • WebSphere Application Server Versión 6.1.0.25 o posterior
    • WebSphere Application Server Versión 7.0.0.5 o posterior
    • WebSphere Community Edition Versión 2.1.1.3 o posterior
    • Apache Tomcat Versión 5.5 o posterior
  • WebSphere eXtreme Scale, Versión 7.1 o posterior, incluyendo la versión de prueba.

Acerca de esta tarea

El servicio de datos REST de WebSphere eXtreme Scale incluye un único archivo wxsrestservice.war. El archivo wxsrestservice.war incluye un único servlet que actúa como una pasarela entre las aplicaciones cliente de WCF Data Services o cualquier otro cliente HTTP REST y una cuadrícula de datos.

El servicio de datos REST incluye un ejemplo que le permite crear rápidamente una cuadrícula de datos e interactuar con ella utilizando un cliente eXtreme Scale o el servicio de datos REST. Consulte Configuración de servicios de datos REST para obtener detalles sobre la utilización del ejemplo.

Cuando se instala WebSphere eXtreme Scale 7.1 o se extrae la versión de evaluación 7.1 de eXtreme Scale, se incluyen los directorios y los archivos siguientes:
  • inicio_restservice/lib
    El directorio lib contiene estos archivos:
    • wxsrestservice.ear – Es el archivo de aplicación empresarial del servicio de datos REST que se debe utilizar con WebSphere Application Server y WebSphere Application Server CE.
    • wxsrestservice.war – Es el módulo web del servicio de datos REST que se debe utilizar con Apache Tomcat.

    El archivo wxsrestservice.ear incluye el archivo wxsrestservice.war y los dos están estrechamente vinculados con el tiempo de ejecución de WebSphere WebSphere eXtreme Scale. Si se actualiza WebSphere eXtreme Scale a una versión nueva o se aplica un fixpack, los archivos wxsrestservice.war o wxsrestservice.ear se deberán actualizar manualmente a la versión instalada en este directorio.

  • inicio_restservice/gettingstarted

    El directorio gettingstarted contiene un ejemplo simple que muestra cómo utilizar el servicio de datos REST de WebSphere eXtreme Scale con una cuadrícula de datos.

Procedimiento

Empaquete y despliegue el servicio de datos REST.

El servicio de datos REST está diseñado como un módulo WAR autocontenido. Para configurar el servicio de datos REST, en primer lugar debe empaquetar la configuración del servicio de datos REST y los archivos de configuración de WebSphere eXtreme Scale opcionales en un directorio o archivo JAR. El tiempo de ejecución del servidor de contenedores web hace referencia entonces a este empaquetado de aplicaciones. En el diagrama siguiente se ilustran los archivos utilizados por el servicio de datos REST de eXtreme Scale.

Figura 1. Archivos del servicio de datos REST de WebSphere eXtreme Scale
Archivos del servicio de datos REST de WebSphere eXtreme Scale

El JAR o el directorio de configuración del servicio REST deben contener el archivo siguiente:

wxsRestService.properties: El archivo wxsRestService.properties incluye las opciones de configuración del servicio de datos REST. Incluye los puntos finales de servicio de catálogo, nombres de ObjectGrid que se deben exponer, opciones de rastreo, etc. Consulte Archivo de propiedades del servicio de datos REST.

Los archivos de cliente de ObjectGrid siguientes son opcionales:
  • META-INF/objectGridClient.xml: se utiliza el cliente XML de sustitución de cliente de ObjectGrid para conectarse a la cuadrícula de datos remota. De forma predeterminada, este archivo no es necesario. Si no se encuentra presente este archivo, el servicio REST utilizará la configuración del servidor, inhabilitando la memoria caché cercana.
    El nombre del archivo se puede sustituir utilizando la propiedad de configuración del servicio de datos REST nombreobjectGridClientXML. Si se proporciona, este archivo XML debe incluir:
    1. Los ObjectGrids que desee exponer al servicio de datos REST.
    2. Las referencias al archivo XML de descriptor de entidad asociado con la configuración de cada ObjectGrid.
  • META-INF/archivos XML de descriptor de entidad: se necesitan uno o varios archivos XML de descriptor de entidad sólo si el cliente necesita sustituir la definición de entidad del cliente. El archivo XML descriptor de entidad se debe utilizar junto con el archivo descriptor XML de sustitución del cliente ObjectGrid.
  • Clases de entidad Se pueden utilizar clases de entidad anotadas o un archivo XML descriptor de entidad para describir los metadatos de entidad. El servicio REST sólo requiere clases de entidad en la classpath si los servidores de eXtreme Scale están configurados con clases de metadatos de entidad y no se utiliza un descriptor XML de entidad de sustitución de cliente.

    Un ejemplo con el archivo de configuración mínimo necesario, donde las entidades están definidas en XML en los servidores:

    restserviceconfig.jar:
    wxsRestService.properties
    El archivo de propiedades contiene:
    catalogServiceEndPoints=localhost:2809
    objectGridNames=NorthwindGrid

    Un ejemplo con una entidad, archivos XML de sustitución y clases de entidad:

    restserviceconfig.jar:
    wxsRestService.properties
    El archivo de propiedades contiene:
    catalogServiceEndPoints=localhost:2809
    objectGridNames=NorthwindGrid
    com/acme/entities/Customer.class
    META-INF/objectGridClient.xml
    El archivo XML de descriptor de ObjectGrid de cliente contiene:
    <objectGrid name="CustomerGrid" entityMetadataXMLFile="emd.xml"/>
    META-INF/emd.xml
    El archivo XML de descriptor de metadatos de entidad contiene:
    <entity class-name="com.acme.entities.Customer" name="Customer"/>