views:

216

answers:

6

I am working on a client - server application and in which I used to send and receive data through SOAP web service.

Now after sometimes I have heard from someone that I might lost some data while this process on soap service created in ASP.net. So now I have decided to send and receive data through batches like first I will send List of 50 objects and then next 50 and so on...

Now I am new to web services and all.

So my question is "Is it true that we can lost some data sometimes while transferring it through SOAP web service?"

A: 

I have never heard of anything like that.

If that were a serious problem there'd be a lot of evidence.

overslacked
A: 

I have tried SOAP protocol in transfering and recieveing data from web service and nothing lost but you have to follow the structure of SOAP in sending and recieving to gurantee not losing data.

To see the structure of the SOAP request the web service function from the browser and it will show you how to call this function inside web service using SOAP and defining how to send its parameters if exist.

Take care dont send or recieve Date type via SOAP because of different formats and also any type that take different formats.

Ahmy
+1  A: 

SOAP uses the HTTP protocol over the internet. HTTP requests can fail for any reason (hardware, server, software, etc.), although that happens infrequently. However, unless your data is EXTREMELY large, I don't see any benefit in breaking the requests into multiple "lists". If anything, the chances of an individual request failing can increase the chance of the overall data transfer failure.

Ralph Stevens
A: 

If you data is serilizable then you will not loose anything.

jalpesh
A: 

The request size can be configured in in web.config in the < httpRuntime /> tag.

The following references show some examples of setting maximums on request/respose data sizes.

A: 

In practice, if you get the well serialized response you will loose nothing.

But you can never receive the response or the request may never reach the server.

Message queuing is the answer to avoid data losses caused by transport issues.

Instead of sending the request and simply wait for the response, message queuing will keep the request and response in a context that will ensure that each request have its response (or more depending on sofisticated rules).

Here is Message Queue over HTTP: Usage Scenarios

JoeBilly