Generating Web Service proxies against a remote machine fails
The Muhimbi Document Converter Services make it very simple to generate proxy classes for our well documented Web Services based API to allow it to be used from a broad range of platforms including Java, PHP, Ruby, SAP, Documentum, SharePoint and .NET (C#, VB).
However, there are a few things that have to be taken into account. Our documentation mentions it, but it is worth highlighting in this separate Knowledge Base article. After all, who reads documentation?
When generating Web Service proxies, you usually specify the following URL, which points to the WSDL providing it runs on the same system as where the proxies are being generated:
http://localhost:41734/Muhimbi.DocumentConverter.WebService/?wsdl
When the Conversion Service runs on a remote system, which is extremely likely when developing in Ruby or PHP, you may be tempted to just replace ‘localhost’ with the name of that system. However, that is only half the story, you will also need to make the following change:
-
Open Muhimbi.DocumentConverter.Service.exe.config in your favourite text editor (notepad works as well). A handy shortcut to the configuration / installation folder that holds this config file can be found in the Muhimbi Document Converter Windows Start Menu group.
-
Search for ’ baseAddress’ and change ’ localhost’ to the DNS name or IP address of the server running the Conversion Service.
-
Restart the Muhimbi Document Converter Service using the Services Management Console or using the command prompt:
Net stop “Muhimbi Document Converter Service”
Net start “Muhimbi Document Converter Service”
If you are using pre-generated proxy classes provided by Muhimbi then there is no need to change the config file, all that needs to be done is specifying the location of the WSDL in your code at run-time. The various examples available in our documentation and website show how to set this URL.