Despliegue de aplicaciones web JAX-RS 1.1

Tras ensamblar la aplicación web de Java™ API for RESTful Web Services (JAX-RS), puede desplegar el paquete de archivos web (WAR) o el paquete de archivadores empresariales (EAR) en el servidor de aplicaciones.

Antes de empezar

Para desplegar una aplicación web de JAX-RS, necesita un paquete WAR o un paquete EAR que esté configurado y habilitado para los servicios RESTful.

Acerca de esta tarea

Toda aplicación web debe tener una raíz de contexto para que la aplicación web se despliegue correctamente. Una raíz de contexto para cada módulo web se define en el descriptor de despliegue de aplicaciones durante el ensamblaje de aplicaciones o durante el despliegue de aplicaciones. El directorio 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á con 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 la correlación URL de servlet es rest/api/*, el URI base para la aplicación web de JAX-RS será http://<nombre_host>:<puerto>/sample/application/rest/api.

Procedimiento

Despliegue del paquete WAR o del paquete EAR de la aplicación web de JAX-RS Obtenga información sobre la instalación de archivos de aplicaciones empresariales para saber más sobre el despliegue de aplicaciones web.

Resultados

La aplicación web de JAX-RS se despliega y estará lista para su uso empresarial.

El despliegue de una aplicación web Java API for RESTful Web Services (JAX-RS) es correcto si puede acceder a la aplicación escribiendo un URL (Uniform Resource Locator) en el navegador o si puede acceder a la aplicación escribiendo un enlace. Si no puede acceder a la aplicación, lleve a cabo estos pasos para eliminar algunos errores comunes que se pueden producir durante el despliegue.

Avoid trouble Avoid trouble:

Utilice las sugerencias siguientes para solucionar errores comunes durante el despliegue de aplicaciones web de JAX-RS.

Se vuelve a enviar un mensaje de error HTTP 404 Not Found al cliente como respuesta del servidor.
Para resolver este problema, realice las acciones siguientes:
  • Compruebe que las clases de recursos raíz se anotan con un anotación @javax.ws.rs.Path y que el valor de la anotación sea correcto. Las clases de recursos de raíz sin anotación @Path no se registrarán con el tiempo de ejecución JAX-RS. Para obtener más información, consulte la definición de los patrones URI para recursos en la información de aplicaciones RESTful.
  • Compruebe que la clase de recurso raíz se añade al conjunto de clases devueltas por el método getClasses() para las subclases de la clase javax.ws.rs.core.Application. Las clases que no se han registrado en las subclases de la clase javax.ws.rs.core.Application no las reconoce el entorno de ejecución de JAX-RS. Para obtener más información, consulte la definición de los patrones URI para recursos en la información de aplicaciones RESTful.
  • Compruebe que la configuración web.xml sea correcta con los patrones URL previstos. Para obtener más información, consulte web.xml para ver información de filtros y servlets de JAX-RS.
  • Compruebe que el URL que se utiliza sea correcto e incluye la raíz de contexto. Si se utiliza un servlet, el patrón de URL del servlet forma parte del URL final. La utilización de un filtro puede resultar más adecuado en su aplicación web. Para obtener más información, consulte el archivo web.xml para ver información de filtros y servlets de JAX-RS.
Se vuelve a enviar un mensaje de error HTTP 405 Method Not Allowed al cliente como respuesta del servidor.
Si el URI de servlet del URL de una solicitud coincide con el valor de vía de acceso de un método de recurso, pero el método HTTP enviado no coincide con la anotación de método, se devuelve un código de estado HTTP de 405 Method Not Allowed.

En el ejemplo de código siguiente el URL de solicitud finaliza con sayhello, pero la solicitud contiene un POST en lugar de un GET, de modo que se devuelve el 405.

@javax.ws.rs.Path("helloworld")
public class SampleResource {

...

@javax.ws.rs.Path("sayhello")
@javax.ws.rs.GET
public String getHello() { ...

Para resolver este problema, realice las acciones siguientes:

  • Verifique que el método HTTP enviado coincida con la anotación del método.
Automáticamente, se vuelve a enviar un mensaje de error HTTP 406 Not Acceptable al cliente como respuesta del servidor.
Para resolver este problema, realice las acciones siguientes:
  • Compruebe que la cabecera de solicitud HTTP Accept de la solicitud entrante sea correcta. Para obtener más información, consulte la Implementación de la negociación de contenido que está basada en la información de las cabeceras HTTP.
  • Compruebe que el valor @javax.ws.rs.Produces del método de recurso o clase de recurso sea compatible con la cabecera de solicitud entrante HTTP Accept. Para obtener más información, consulte los tipos de medios de definición para recursos en aplicaciones RESTful.
Automáticamente, se vuelve a enviar un mensaje de error HTTP 415 Unsupported Media Type al cliente como respuesta del servidor.
Para resolver este problema, realice las acciones siguientes:
  • Compruebe que la cabecera de solicitud HTTP de tipo contenido de la solicitud entrante sea correcta y que se envíe. Para obtener más información, consulte los tipos de medios de definición para recursos en aplicaciones RESTful.
  • Compruebe que el valor @javax.ws.rs.Consumes del método de recurso o clase de recurso sea compatible con la cabecera de solicitud entrante HTTP de tipo contenido.
Automáticamente, se vuelve a enviar un mensaje de error HTTP 204 No Content al cliente como respuesta del servidor.
Para resolver este problema, haga lo siguiente:
  • Determine si una respuesta nula en el recurso debe dar como resultado un código de respuesta 204 No Content.
gotcha

Para obtener información sobre problemas conocidos y sus soluciones, consulte la página Soporte de IBM.

El soporte de IBM® tiene documentos que pueden ahorrarle tiempo a la hora de recopilar la información necesaria para resolver este problema.


Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxrs_deploy
File name: twbs_jaxrs_deploy.html