Web Services com muitos campos de entrada

Olá Pessoal,
me deparei com a criação de um Web Service que receberá mais de 300 campos, é uma única chamada que receberei estes dados.

Não tive muitas experiências com Web Service, mas os que sempre fiz foi expor uma interface que recebe estes dados, mas eram poucos. Posso fazer da mesma forma recebendo mais de 300 campos de dados de entrada?
Vocês teriam alguma idéia de como eu implementar isto seguindo um bom padrão de desenvolvimento?
Qualquer ajuda será bem vinda.

Abraços e obrigado
Wanderson 8)

Que tipo de protocolo você está usando? SOAP?

Sim amigo vou utilizar SOAP.

Abraços
Wanderson 8)

Bom, acho que não tem problema algum passar esses 300 campos… Se fosse REST você passaria os 300 campos no request do mesmo jeito…

Se você está usando SOAP por escolha pessoa sugiro dá uma lida em REST, mas se for por necessidade, então tá perdoado. Mas de qualquer forma, dá uma lida em REST.

Abraços.

Ok vou dar uma lida sim…
Vc tem alguns links que tratam do assunto sobre REST?
Mas de qq forma procuro no pai dos burros o Google… :smiley:

obrigado
Abraços
Wanderson 8)

:lol:

editado: adicionando algumas sugestões de site.

alguns sites bastante interessantes que achei

[quote]http://home.ccil.org/~cowan/restws.pdf
http://pt.wikipedia.org/wiki/REST
http://soa.dzone.com/news/publish-mondayusing-rest-along
http://dobbscodetalk.com/index.php?option=com_myblog&show=REST-presentation.html&Itemid=29
http://www.testearly.com/2008/07/23/restful-web-services-in-60-seconds/
http://www.ddj.com/web-development/208402614
http://www.infoq.com/articles/rest-anti-patterns
http://www.infoq.com/rest/
http://www.ibm.com/developerworks/ibm/library/i-zero1/[/quote]

de todos o que mais acho legal, prático e didático é o do javapassion motivado pelo engenheiro da sun, Sang Shin.

[quote=wariows]Bom, acho que não tem problema algum passar esses 300 campos… Se fosse REST você passaria os 300 campos no request do mesmo jeito…
[/quote]

Nao necessariamente… existem outras formas de representacao que tb podem ser usadas para manipular resources. Eu me perguntaria:

  • O meu cenario exige mesmo passar os 300 campos de uma vez?
  • Que formato utilizar para representar esses 300 campos?

Quando eu preciso passar muitos dados e variáveis(hora 300, hora 200, hora 250, etc), cotumo passar isso em forma de XML:

<parametros>
   <param1>valor1</param1>
   <param2>valor2</param2>
...

Não existe nenhum problema em passar bastante informação. Na verdade você deve passar isso como um Documento (e.g XML, JSON, whatever). Esse Documento representa uma parte (ou todo) do contrato de comunicação entre o cliente e o serviço.

Uma coisa importante para você avaliar é (1) se realmente você precisa passar todas as informações na primeira requisição, visto que talvez a verificação das primeiras informações já invalide a requisição e faça com que várias chamadas gerem um tráfego de rede desnecessário e (2) se o número de round-trips é relevante nessa situação.