Crear un servicio web JAX-RS

Antes de empezar

Para desplegar el servicio web, es preciso que tenga un servidor definido e iniciado con un soporte Java™ 5.0 o JVM posterior. Esto incluye:
  • WebSphere Application Server v7.0 o v8.0, seleccionando la instalación del paquete de características para Web 2.0 y Mobile, y las herramientas para el desarrollo de WebSphere Application Server
De forma predeterminada, se crea un servidor automáticamente cuando se instala WebSphere Application Server. Este servidor se puede en la vista Servidores.

Si opta por desplegar en un servidor distinto de WebSphere Application Server, no puede utilizar la biblioteca JAX-RS de IBM®, y debe instalar y configurar sus propias bibliotecas JAX-RS a través de la página de preferencias Facetas del proyecto > JAX-RS.

Para obtener información detallada sobre la utilización de los servicios web JAX-RS en WebSphere Application Server, consulte:WebSphere Application Server Information Center

Crear un proyecto web habilitado para JAX-RS

Acerca de esta tarea

El servicio web JAX-RS tiene que residir en un proyecto con la faceta JAX-RS habilitada.

Procedimiento

  1. En la perspectiva Java EE, pulse con el botón derecho en el proyecto de aplicación empresarial y seleccione Nuevo > Proyecto web para abrir el asistente de proyecto web.
  2. En el campo Nombre, escriba el nombre del proyecto web.
  3. En la sección Plantillas de proyecto, seleccione el tipo de plantilla web que desee utilizar: seleccione Simple para crear un proyecto web simple.
  4. En la sección Modelo de programación, seleccione el modelo de programación que desea utilizar: seleccione Modelo de programación Java EE. Pulse Siguiente para configurar el proyecto web nuevo.
  5. En la página de despliegue, en la lista de opciones de configuración disponibles, pulse Despliegue para abrir la página Configuración del despliegue.
    • Puede cambiar el Entorno de ejecución de destino seleccionando otro en el recuadro desplegable. Pulse Cambiar características para abrir la ventana Facetas de proyecto. En la página Facetas del proyecto, JAX-RS (REST Web Services) y pulse Aceptar.
    • Pulse Añadir soporte para enlaces y extensiones de WebSphere o borre este campo.
    • En el campo Versión de módulo web, seleccione la versión de módulo web que desea utilizar.
    • En el campo Pertenencia de EAR, pulse Añadir proyecto a un EAR si desea incluir pertenencia a EAR; deseleccione este campo si no desea añadir el web proyecto a un archivo EAR.
    • En el campo nombre de proyecto EAR, aparecerá el nombre del archivo EAR existente. Puede pulsar Examinar para seleccionar un archivo EAR diferente.
    Nota: La opción de despliegue no está disponible si ha seleccionado el modelo de programación de solo cliente para el nuevo proyecto web.
  6. En la lista de opciones de configuración disponibles, pulse Servicios REST.
    1. En el campo Biblioteca de implementación JAX-RS, seleccione la biblioteca para la versión de servidor; por ejemplo Biblioteca JAX-RS de IBM WebSphere Application Server v8.0 o Biblioteca JAX-RS de IBM WebSphere Application Server v8.5.
      Más información sobre bibliotecas: Las bibliotecas JAX-RS para cada entorno de prueba de WebSphere que haya instalado aparecerán en este recuadro desplegable. Si desea utilizar una biblioteca que no sea de WebSphere, se puede importar mediante la página de preferencias Bibliotecas de usuario. Si selecciona Biblioteca de usuario, puede iniciar la página de preferencias Bibliotecas de usuario y añadir una biblioteca. Cuando se haya creado un proyecto, puede cambiar la biblioteca pulsando con el botón derecho sobre el proyecto y seleccionando Preferencias > Facetas del proyecto > JAX-RS. También puede seleccionar que el asistente no configure la biblioteca automáticamente, en cuyo caso debe configurar manualmente la vía de acceso de clases.
    2. Si utiliza una versión de WebSphere Application Server anterior a la v8, seleccione Incluir biblioteca con esta aplicación y seleccione incluirla como Biblioteca compartida. Esto añade archivos jar JAX-RS a la vía de acceso de clases, así como añadir una entrada Biblioteca compartida en el EAR ampliado.
    3. Actualizar descriptor de despliegue se selecciona de forma predeterminada porque tendrá que utilizar un archivo web.xml para configurar las restricciones de seguridad y otras cuestiones. Se generará y se actualizará un archivo web.xml con información de servlet JAX-RS aunque haya seleccionado que no desea generar un descriptor de despliegue en el paso previo del asistente. Esta opción sólo está disponible cuando la faceta Módulos web seleccionada es v.3.0 o superior.
    4. Si ha decidido que desea actualizar el descriptor de despliegue podrá cambiar el nombre de servlet y el nombre de clase de servlet y cambiar los patrones de correlación URL.
  7. Puede cambiar el Entorno de ejecución de destino seleccionando otro en el recuadro desplegable. Pulse Cambiar características para abrir la ventana Facetas de proyecto.
    • En el campo Carpetas de orígenes en la vía de acceso de creación, acepte el directorio predeterminado src o pulse Añadir carpetas, Editar... o Eliminar para especificar una carpeta de archivos de origen.
    • En el campo Carpeta de salida predeterminada:, especifique una carpeta para los archivos de salida o acepte el valor predeterminado (WebContent\WEB-INF\classes).
  8. EN la lista de opciones de configuración disponibles, pulse Módulo web. En la página Configuración de módulo web:
    • En el campo Raíz de contexto, escriba el nombre de la raíz de contexto del proyecto, o acepte el valor predeterminado (que es el nombre del proyecto web).
    • En el campo Directorio de contenido, escriba el nombre del directorio de contenido o acepte el valor predeterminado (WebContent).
    • Seleccione Generar descriptor de despliegue web.xml si desea crear un descriptor de despliegue. También podrá añadir un descriptor de despliegue para el módulo web más adelante.
  9. Pulse Finalizar.

Crear un servicio web JAX-RS

Procedimiento

  1. En el proyecto web, cree un paquete (pulse con el botón derecho del ratón en Recursos Java > src y seleccione Nuevo > Paquete). Importe las clases para el servicio web al paquete.
  2. Abra WebContent/WEB-INF/web.xml. En la vista Diseño, seleccione el servlet JAX-RS Servlet, pulse Añadir y añada un parámetro de inicialización del servlet de JAX-RS, dejando vacíos los campos de nombre y valor. Guarde web.xml omitiendo los errores que podrían visualizarse.
  3. En la vista Marcadores, seleccione el error de web.xml sobre el param-name, pulse con el botón derecho del ratón y seleccione Arreglo rápido. Vaya a la aplicación y selecciónela.
  4. Añada el EAR que contiene el proyecto JAX-RS al servidor e inícielo.

Resultados

Cada aplicación web debe tener una raíz de contexto para que la aplicación web se despliegue satisfactoriamente. Durante el ensamblaje o el despliegue de las aplicaciones se define una raíz de contexto para cada módulo web en el descriptor de despliegue de las aplicaciones. La raíz de contexto se combina con la correlación de servlet definida del archivo WAR para componer el URL completo que los usuarios escriben para acceder al servlet. La raíz de contexto de cada aplicación web desplegada debe ser exclusiva en el servidor. La raíz de contexto también puede estar vacía.

Por ejemplo, si una aplicación web ha utilizado una raíz de contexto de sample/application/, el URL de solicitud de la aplicación web comenzará por http://<nombre_host>:<puerto>/sample/application/. El patrón URL de un servlet se añade a la raíz de contexto de la aplicación web. Por ejemplo, si la raíz de contexto es sample/application/ y l a correlación de URL de servlet es rest/api/*, el URI de base de la aplicación web JAX-RS es http://<nombre_host>:<puerto>/sample/application/rest/api.

Edición de un proyecto JAX-RS

Una vez que haya creado un servicio web JAX-RS, puede editarlo, pulsando con el botón derecho del ratón en el proyecto y seleccionando Propiedades > Facetas del proyecto > JAX-RS. Desde esta página puede cambiar lo siguiente:
  • Tipo de biblioteca
  • Nombre de servlet JAX-RS
  • Nombre de clase de servlet JAX-RS
  • Patrones de correlación URL
Por ejemplo, si migra el proyecto a un servidor diferente, puede cambiar el proveedor de biblioteca por uno soportado por el nuevo servidor.
Icono que indica el tipo de tema Tema de tarea
Términos y condiciones para centros de información | Comentarios

Icono de indicación de fecha y hora Última actualización: 22 de abril de 2014

Nombre de archivo: tjaxrswebservcreate.html