Bugzilla – Bug 322400
[System.Web.Services] SOAP-Problems
Last modified: 2008-06-05 21:46:51 UTC
---- Reported by spielc@gmx.at 2006-10-19 11:31:07 MST ---- Description of Problem: Something seems to be terribly wrong with the current client-side soap implementation of mono. I can develop the ws itself just fine, it compiles well. i can even test it with xsp2 (using the web-service testbench xsp2 provides) BUT as soon as i try to actually USE it everything fails (on the mono-side, i created a ws-proxy with axis-1.4 for my simple service and the java-client works as expected). To be correct when i try to use the client with the web-browser through a http-get-request i get the correct result but when i try to use the by xsp2 automatically created test form (and thus the SOAP-Execution), execution fails (the error msg the form displays is: Error getting response stream (ReadDone2): ReceiveFailure). When i try to use wsdl2 to create a local-proxy for the same web-service it creates the cs-file with the code. it compiles fine but when i try to actually use the proxy to execute the web-method of my service it fails again... I think that it is a general problem because i experience this problem both with a compiled 64-bit version on gentoo linux and with a binary 32-bit windows-version. Steps to reproduce the problem: 1. Create a web-service 2. Create a proxy for this web-service with the mono wsdl-to-c# tools 3. Compile the created file and execute it Actual Results: Web-Service-Proxy crashes. Expected Results: Web-Service-Proxy shouldn't crash and result should be displayed How often does this happen? Always Additional Information: As said before problems occur on both compiled/binary 32-/62-bit windows/linux verions of mono (tried both version 1.1.17 and 1.1.18 on gentoo linux and the version 1.1.18 on windows) ---- Additional Comments From spielc@gmx.at 2006-10-20 14:48:23 MST ---- Okey after doing some more testing i have to say that i'm dumbfound. I used the wsdl2-tool to create proxy's for two more web-services that could be found on xmethods.com (the wsdl-files i used can be found here: http://www.bs-byg.dk/hashclass.wsdl and http://www.atomic-x.com/xmlservices/GuitarManufWS.asmx?wsdl). Both proxy's worked well (except the fact that wsdl2 creates two completely exact proxy's, which causes gmcs to choke on the file but as soon as you comment the second class out everything works as expected... I'll attach one of the generated cs-files to this bugreport) Thus the problem seems to be related to the simple web-service i implemented (the only thing i find kinda disturbing is the fact that my ws works without any problems with the axis-client but i have no chance to make it work with the c#-client. I'll attach both the source-files of the web-service and the c#-proxy-classfiles to this bug-report. Maybe somebody else can have a look at it and has a hint what could be wrong! Regards! ---- Additional Comments From spielc@gmx.at 2006-10-20 14:53:40 MST ---- Created an attachment (id=170676) c#-ws-proxy for http://www.atomic-x.com/xmlservices/GuitarManufWS.asmx?wsdl ---- Additional Comments From spielc@gmx.at 2006-10-20 14:56:27 MST ---- Created an attachment (id=170677) c#-proxy for my sample ws ---- Additional Comments From spielc@gmx.at 2006-10-20 14:57:10 MST ---- Created an attachment (id=170678) asmx-file of my web-service ---- Additional Comments From spielc@gmx.at 2006-10-20 14:59:28 MST ---- Created an attachment (id=170679) implementation of this simple web-service Imported an attachment (id=170676) Imported an attachment (id=170677) Imported an attachment (id=170678) Imported an attachment (id=170679) Unknown bug field "cf_op_sys_details" encountered while moving bug <cf_op_sys_details>Gentoo Linux-2006.1</cf_op_sys_details>
xsp2 does not cause that ReadDone() error on web browser (DefaultWsdlHelpGenerator.aspx) on Linux. On windows it has been a long issue though (I've never seen it worked). Marek, any idea on this general issue?
Creating, compiling and running the simple web service proxy works fine here on Windows. However, the Test Form indeed results in the following error using both XSP and XSP2: "Error getting response stream (ReadDone2): ReceiveFailure" XSP(2) logs the following exception: Peer unexpectedly closed the connection on write. Closing our end. System.IO.IOException: Write failure ---> System.Net.Sockets.SocketException: An established connection was aborted in your host machine. at System.Net.Sockets.Socket.Send (System.Byte[] buf, Int32 offset, Int32 size , SocketFlags flags) [0x00000] at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, Int32 offset, Int32 size) [0x00000] --- End of inner exception stack trace --- at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, Int32 offset, Int32 size) [0x00000] at Mono.WebServer.XSPWorker.Write (System.Byte[] buffer, Int32 position, Int32 size) [0x00000]
I experienced this problem on our intranet (10x/ days) but i can't reproduce it on my dev PC... But this bug is very annoying...
This looks like something we came into a few months ago (at least the part about axis). Problem was that axis client makes requests with chunked encoding and xsp2 does not support it. With mod_mono is even worse, as apache automatically decodes chunked encoding requests, but is doesn't provide the content-length expected by mod-mono-server. I have a couple dirty patched bitrotting somewhere that addressed this, though I never got around to cleanup them.
Hubert, can you describe what is the web server that hosts the web service that we are talking to?
Hubert case is almost ignorable or different from this issue because he says that he cannot reproduce the issue (while everyone else can). He should file different bug report. Adding bug dependency (now we simply cannot access to *.asmx).
(In reply to comment #5 from Miguel de Icaza) > Hubert, can you describe what is the web server that hosts the web service that > we are talking to? > The issue appears now 3-4 times/ days... My webserver is running asp.net over an nfs share (the aspx and the dll are on an nfs share in order to do load balancing). The nfs server is serving a SAN disk schema of our architecture <ASP WebServer1><--> <WebService WebServer1> <ASP WebServer2 <--> <WebService WebServer2> | | |------------------------- <Nfs Server> | <SAN> There's something strange, two weeks ago, the write cache of our SAN has been disabled, write performance on our nfs was awful... and the problems happened 60-70 times/days... It seems there's a link between nfs and this problem (that's why i can't reproduce it on my dev machine which is not on an nfs share
Looks like the link (http://www.atomic-x.com/xmlservices/GuitarManufWS.asmx?wsdl) is no longer valid. Is this bug still reproduceable without that link?
Created attachment 220559 [details] All in one test case from the above attachments (use this one to reproduce)
Using the all in one test case from comment 9, I am unable to reproduce this bug on Mono SVN r105066 on SLED 10 SP2 i586. I'm closing this bug as I think it's been fixed. Also, from comment 6 it seems that Hubert should file a new bug for his comments on this bug. Gen2, if you can still reproduce this, please re-open this bug.