Frank Thomas
Frank Thomas

Reputation: 2514

HTTP Redirect to SOAP Webservice

I need to move several ASP.net SOAP web-services to a different server, but they are widely used, and we can't break client connectivity to their former location. the clients cannot be modified.

I've established a HTTP redirect (302) to the new service location, but the SOAP client gets the redirect advertisement instead of the service response.

I've seen some approaches to dealing with this problem but they all involve modifying the client code, which is not an option. The only idea I have left is to create a transparent proxy SOAP service that returns the desired response, but instead of loosening our coupling, we are actually tightening it another notch, which is both silly, and ugly to maintain.

any better answers?

Upvotes: 1

Views: 2724

Answers (1)

dmarietta
dmarietta

Reputation: 1932

I would think creating a stub using the old URL for your old services using the HttpServerUtility.Transfer method would be the best way to do that. This should be 100% transparent to any client, meaning it does not send a HTTP level redirect or anything for the client to receive and respond to correctly.

On the server side, you would be able to map the old webservice call to the new call and it should be completely transparent to the client. This will only work if the response from the new service will still be close enough to validate to the WSDL for the old service. If the signature of the webservice methods and responses have changed too drastically, then you will not be able to do it as transparently.

Upvotes: 2

Related Questions