Question: I'm using Sitecore Webforms For Marketers in a multi-language environment (e.g. .com, .be, .nl en .de). There are 3 servers: 2 Content Delivery Servers (CDS) en 1 Content Management Server (CMS). On the CDS servers is no possibility to write data, so i have configured a webservice to forward the form data from the CDS to the CMS server.

My problem is that the Web service communicates with the .com domain. By using the .com domein for webservice communication, the CMS doesn't have any know how what the site context is from the submitting domain. For example, a user submits a form on the .nl domain, the CMS server thinks it's coming form the .com domain.

Does anyone know how i can get the site context (e.g. NL-nl) from the submit? 

Thanks a lot!

Jordy

Answer: 
Similar question was asked [here](https://stackoverflow.com/questions/20800966/how-to-get-the-sitecore-current-site-object-inside-custom-save-action-wffm) and answered by [@TwentyGotoTen](https://stackoverflow.com/users/2124993/twentygototen). The place where you need to get the current site is different than in linked question, but the answer is the same. Use the code which is used by Sitecore to resolve site:

```
var url = System.Web.HttpContext.Current.Request.Url; 
var siteContext = Sitecore.Sites.SiteContextFactory.GetSiteContext(url.Host, url.PathAndQuery);

```

The extended version of the code for resolving sites (linked in the same question by [@MarkUrsino](https://stackoverflow.com/users/134360/mark-ursino)) can be found in article [Sitecore Context Site Resolution](http://firebreaksice.com/sitecore-context-site-resolution/).

Can you use the proper domain for each web service call? If you have to call web service using `.com` domain only, maybe you can try to check `UrlReferrer` instead of current request `Url` host?
Update your web service to pass an extra parameter for the host name (via the CD clients) and then on the service (on your CM) get the context site from that.