Fog Creek Software
Discussion Board




Welcome! and rules

Joel on Software

Exposing Web Services without IIS

OK, here's a question I've been fighting with.  I want to expose an easy way for end-user developers to automate control of our application locally or over a LAN.  The first thing that comes to mind is "Hey, why not just expose some web services and make it easy as pie for the developer."  Well, it turns out I don't see any easy way for me to do that...all the web service deployment I've seen involves IIS and we can't require IIS to be installed.

So is there an actual way to do this?  Or am I barking up the wrong tree and there's a more standard means of network based automation that end-user developers could easily access?

Richard Kuo
Sunday, July 20, 2003

The ASP.NET Cassini Web Server Sample is a sample web server written using the Microsoft® .NET® Framework, and demonstrates hosting ASP.NET using the ASP.NET hosting APIs (System.Web.Hosting).
http://www.asp.net/Default.aspx?tabindex=7&tabid=41

Explore and Extend the Cassini Web Server
http://www.devx.com/dotnet/Article/11711/0/

Host Web Service Applications With Cassini
http://www.pinnaclepublishing.com/ws/wsmag.nsf/0/CE0F20660EAB8A0F85256D4E005C6708

rick
Sunday, July 20, 2003

Why not look into .NET remoting?  Using a SOAP formatter and an HTTP channel with SingleCall objects will essentially mimic a web service, if that's what you want to do.

Of course you're not limited to that.  If you're dealing with strictly .NET developers, you can expose what you want over TCP using binary serialization.  If interoperability with other languages/frameworks isn't an issue, this is definitely the way to go instead of web services.

Ryan Duffield
Sunday, July 20, 2003

Well here's the problem...the application is a straight-up C++ application and we would prefer to not require users to have to install the .NET framework in order to add remoting to the product.  However, we would like the application to be controllable via a web services type model so that client development could be done using .NET.  It doesn't really have to be done using .NET, but the main requirement is that the RPC must be possible locally or over a LAN and it must be as easy to do as possible.  I have been searching very hard for some way to embed a lightweight SOAP server but I don't really know where to head on this.

Richard Kuo
Monday, July 21, 2003

Just to follow up...we're probably going to go with remoting.  The remotable objects will be wrappers around COM objects so that the app itself can still run without the .NET framework installed.

Richard Kuo
Sunday, August 10, 2003

Check out Web Services Enhancements 2.0 which gives you a TCP SOAP server without involving IIS.

ODN
Tuesday, August 19, 2003

*  Recent Topics

*  Fog Creek Home