Desculpe, essa pergunta parece boba, mas depois de desenvolver alguns dos meus serviços RESTful usando Jersey, me perguntei - Se REST é apenas uma arquitetura, e não um protocolo como SOAP, por que precisamos de uma especificação como JAX-RS?
Na verdade, pesquisei no Google por questões como "Qual é a diferença entre servlets e serviços RESTful sobre HTTP" e, para resumir as respostas da comunidade, obtive:
- O desenvolvimento de serviço RESTful (em Jersey) é uma arquitetura que usa servlets inerentemente.
- Ferramentas compatíveis com JAX-RS, como Jersey, fornecem fácil empacotamento e descompressão de dados XML / JSON, ajudando os desenvolvedores.
- REST nos ajuda a usar GET / POST / PUT / DELETE de uma maneira muito eficiente do que servlets normais.
De acordo com essas respostas, acho que se eu escrever um servlet que usa JAXB (para lidar com a serialização automática) e usar GET / POST / PUT / DELETE em meu código de servlet, não uso uma ferramenta como Jersey e daí JAX-RS.
Sei que estou terrivelmente errado ao passar esta afirmação, corrija-me.
PS: Essa dúvida realmente surgiu quando tive que desenvolver alguns serviços RESTful em PHP. Depois de passar por alguns dos códigos PHP RESTful, percebi que são apenas os mesmos scripts PHP antigos, com alguns métodos auxiliares para lidar com XML / JSON.