Pergunta

Existe uma maneira de construir Spring Web chamadas que consomem e produzem application/json solicitações e respostas formatadas, respectivamente?

Talvez isso não é Spring MVC , eu não tenho certeza. Eu estou olhando para a Primavera de bibliotecas que se comportam de forma semelhante ao Jersey / JSON . O melhor caso seria se houvesse uma anotação que eu poderia acrescentar às classes controlador que iria transformá-los em JSON chamadas de serviço.

Um tutorial mostrando como construir Spring Web Services com JSON seria ótimo.


EDIT:. Eu estou procurando uma abordagem baseada anotação (semelhante a Jersey)

EDIT2: Como Jersey, estou à procura de suporte a REST (POST, GET, DELETE, PUT)

.

EDIT3:. Mais preferivelmente, esta será as entradas pom.xml e algumas informações sobre o uso dos primavera-js com jackson Primavera versão nativa de coisas

Foi útil?

Solução

No caso de outros ppl chegar aqui mais tarde: http://blog.springsource.com/ 2010/01/25 /-ajax-simplificações-in spring-3-0 / foi o elo mais útil para mim. Que finalmente me fez entender o modelo (após menos de um dia de busca).

Outras dicas

Você pode certamente ter controladores que retornam a View que está em saída JSON. Dê uma olhada na o projeto Spring-JSON .

Para consumir pedidos em JSON Eu diria que você só gostaria de ter um controlador para passar um parâmetro de solicitação off a uma biblioteca JSON que pôde analisar os dados?

Não há nenhuma maneira pré-embalados para fazer o que você quer como Jersey está muito bem integrado com Primavera através do API Jersey-Spring então não há realmente nenhuma razão para re-inventar a roda.

Desde a Primavera-MVC 3.0 apoio oficial para Ajax comunicação remota com JSON é fornecida como parte do Spring MVC. Isso inclui suporte para geração de respostas JSON e vinculativa solicitações JSON usando o modelo de programação Spring MVC @Controller.

aqui

Esta característica é agora parte da Primavera desde a versão 3.0. Você pode simplesmente usar a anotação @ResponseBody para especificar que você deseja que o valor de retorno de seus métodos do manipulador de solicitação para ser serializado para JSON e enviado como o corpo da resposta. Consulte http://blog.springsource.com / 2010/01/25 / Ajax simplificações-in-spring-3-0 /

Parece que DWR quadro parece muito perto do que você quer obter.

Você pode configurar interceptores Spring MVC através de manipulador mapeamentos e, em seguida, usar os mapeamentos para transformar os dados retornando para JSON. A configuração manipulador pode ser feito em xml (sem necessidade de recompilação), e isso pode ser completamente transparente para o resto da aplicação.

É bastante fácil de controladores de anotar com algumas anotações e, em seguida, ligar o processo de inicialização BeanFactory para registrar os controladores dentro de algum processo de mapeamento de manipulador.

Eu tenho usado essa abordagem para transformar o resultado de controladores de primavera em chamadas GWT RPC.

Você também pode usar Spring AOP para chamadas de método de controlador de interceptação e desembrulhar / embrulhar os pedidos de / para JSON.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top