Deploy your own custom webservices on a sharepoint environment

I was a little bit puzzled about deploying a new webservice. This is how I did it.

  1. Copy your dll file into the bin folder of your web application
  2. In the 12ISAPI folder, which is the virtual IIS directory _vti_bin folder, locate the web.config file and modify the following: <webServices>      <protocols>          <remove add name="HttpGet" />          <remove add name="HttpPost" />          <remove add name="HttpPostLocalhost" />          <add name="Documentation" />      </protocols>  </webServices>

Depending on your needs you can either make the web service available on farm level by using the ISAPI folder or on web application level by using your web application folder.

  1. Farm level:  Copy your asmx file in the ISAPI folder
  2. Web application level:   Create a new folder under the root of your web application and copy your asmx file to this location.

Now navigate with your browser to the copied asmx file:

  • http://<web application>/_vti_bin/<service>.asmx
  • http://<web application>/<new folder>/<service>.asmx

If your webservice listens to SOAP requests then you need to enable that by adding the <add name="httpSoap" /> entry.