[Mono-aspnet-list] Copied web service not behaving same way as original

The_Assimilator the.assimilator at gmail.com
Thu Apr 15 12:58:24 EDT 2010


After a lot more troubleshooting I've found 1 difference: the version
of httpd-devel on the old machine is 2.2.3-22 while on the new machine
it is 2.2.3-31, could this be the problem?

I've also debugged DefaultWsdlHelpGenerator.aspx for half a day and
found that the FindOperation() method seems to be causing trouble. For
my service on the original server, when FindOperation(Binding, string)
is called with HttpGet and HttpPost as the bindings, it returns
values; on the new (problematic) server the same method calls return
NULL.

Please would someone explain how DefaultWsdlHelpGenerator.aspx
populates the "ServiceDescriptionCollection descriptions" variable
(which contains all the information used to build the test form and
WSDL)?

On Tue, Apr 6, 2010 at 7:43 PM, The_Assimilator
<the.assimilator at gmail.com> wrote:
> Hi all,
>
> I have a web service running on a CentOS 5.2 server, with Apache
> 2.2.3, Mono 2.4.3 and xsp 2.4.2. This web service has a single method
> that takes multiple "complex" objects as parameters (DateTimes etc.)
> This service has been successfully running on said machine for around
> 6 months, with a client app POSTing data to it via HTTP.
>
> A more powerful machine was purchased to run the web service; it has
> CentOS 5.4 with Apache 2.2.7 but is otherwise completely identical to
> the older box, down to the directory structures, configuration files
> and options therein, etc. We copied the web service from the old
> machine to the new, preserving all directories, with the expectation
> that it would work exactly the same. However, on this PC, the web
> service only accepts SOAP requests (attempting to POST to it raises an
> exception that the method doesn't exist).
>
> I have checked an cross-checked on both computers and the only
> difference I can see is in the Web Service Test Form. On the old PC,
> it specifies the "supported operations" as "SOAP, HttpGet, HttpPost"
> while the new machine only allows "SOAP". Additionally, if I check the
> WSDL generated by the web service test form, on the old machine it
> correctly generates the operations for GET and POST, while the new one
> does not.
>
> I am completely stumped here... have tried adding HttpGet and HttpPost
> in the web.config file but that had no effect. If anyone could advise
> anything - even something as "small" as exactly where I should start
> looking for the cause of these differences - I'd be extremely
> grateful.
>


More information about the Mono-aspnet-list mailing list