Visão Geral do IBM JAX-RS
A API Java™ para Serviços da Web RESTful (JAX-RS) é um modelo de programação que fornece um mecanismo para desenvolver serviços que seguem os princípios Representational State Transfer (REST). Usando o JAX-RS, o desenvolvimento de serviços RESTful é simplificado.
O JAX-RS é uma coleta de interfaces e anotações Java que simplifica o desenvolvimento de aplicativos REST do lado do servidor. Usando a tecnologia JAX-RS, os aplicativos REST são mais simples de desenvolver, de consumir e de escalar quando comparado a outros tipos de sistemas distribuídos. Este produto suporta uma API Java para desenvolver serviços baseados no REST. A implementação IBM® do JAX-RS fornece uma implementação da especificação JAX-RS.
Para desenvolver serviços RESTful usando o IBM JAX-RS, assume-se que você esteja familiarizado com os princípios básicos REST e que possua um conhecimento básico das tecnologias padrão, como HTTP e XML.
- REST e JAX-RS
O Representational State Transfer, também conhecido como REST, é um estilo de arquitetura que usa várias tecnologias padrão, como HTTP, XML, ATOM e HTML. O REST é usado para definir aplicativos flexíveis com base na noção de recursos. Um recurso é simplesmente qualquer dado que você queira compartilhar na web que possa identificar por um Identificaor Uniforme de Recursos (URI).
O JAX-RS é uma especificação definida pelo JSR-311 no Processo de Comunidade Java. Alguns dos recursos chaves fornecidos pelo JAX-RS incluem:- Uma coleta de anotações para declarar as classes de recursos e os tipos de dados que eles suportam.
- Um conjunto de interfaces que permitem que os desenvolvedores de aplicativos tenham acesso ao contexto de tempo de execução.
- Uma estrutura expansível para integrar manipuladores de conteúdo customizados.
- Apache Wink e a implementação IBM do JAX-RS
O Wink é um projeto desenvolvido com o Apache Software Foundation que fornece uma estrutura leve para desenvolver aplicativos RESTful. O Wink suporta serviços REST implementados usando o JAX-RS para descrever os recursos no servidor. Entretanto, uma API de cliente também é fornecida pelo Wink. Essa API de cliente é específica para o ambiente de tempo de execução do Wink porque não há nenhuma API de cliente definida pelo JAX-RS.
A implementação IBM de JAX-RS é uma extensão do ambiente de tempo de execução do Wink 1.1 de base. O IBM JAX-RS inclui os seguintes recursos:- Tempo de execução do servidor JAX-RS 1.1
- A API do cliente independente com a opção de usar o Apache HttpClient 4.0 como o cliente subjacente
- Suporte para provedor de entidade integrado para JSON4J.
- Um modelo JAXB Atom além do suporte Apache Abdera.
- Suporte de conteúdo multipartes.
- Um sistema manipulador para integrar manipuladores de usuário no processamento de pedidos e respostas.
Agora você está pronto para começar a aprender mais sobre a implementação de serviços RESTful usando o IBM JAX-RS.- Para obter um exemplo de como obter um aplicativo da Web JAX-RS executando rapidamente, consulte a documentação de iniciação rápida.
- Para saber como planejar considerações para o aplicativo JAX-RS, consulte o planejamento para usar o JAX-RS para ativar a documentação de serviços RESTful.
- Para saber mais sobre desenvolvimento, compactação e implementação de serviços da Web JAX-RS, consulte a implementação da documentação de aplicativos da Web JAX-RS. Informações adicionais são fornecidas para implementação de aplicativos da Web JAX-RS que usam os formatos de conteúdo XML, JSON ou Atom.