views:

33

answers:

1

I have a COM+ object which is not stateless (it takes a while to initialize, and maintains large objects in RAM). I want to expose its functionality to other applications / hosts via web service or TCP/IP.

I saw that COM+ Component Services have a built-in capability to create SOAP wrappers and attach them to IIS. However, it looks like it doesn't use the meta-data from the COM+ objects, and I am not sure whether I have control over the creation and destruction of the objects.

+1  A: 

You should totally forget the idea of using the built-in integration capability. It's simply a bad idea.

Instead, create yourself a WCF service to expose the object. The WCF service can be stateful if necessary, such that multiple calls to the service from the same client will all go to the same instance of your COM+ object (assuming it supports multiple instances).

Is your object transactional? You can expose this through WCF, but not through the built-in "integration" capability.

John Saunders
Hi John,Thank you for your reply. I read a bit about WCF and it seems like a more logical choice with far higher flexibility. I also heard that it's possible to create a cluster of servers with automatic load-balancing. That'd be pretty cool. No, the object is not transactional.
Vadim Berman