[Mono-bugs] [Bug 51839][Nor] New - WSDL Tool parse problem with XML Namespaces

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Thu, 5 Feb 2004 00:16:38 -0500 (EST)

Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by davidandrewtaylor@hotmail.com.


--- shadow/51839	2004-02-05 00:16:37.000000000 -0500
+++ shadow/51839.tmp.21198	2004-02-05 00:16:37.000000000 -0500
@@ -0,0 +1,91 @@
+Bug#: 51839
+Product: Mono/Class Libraries
+Version: unspecified
+OS: unknown
+OS Details: 
+Status: REOPENED   
+Severity: Unknown
+Priority: Normal
+Component: Sys.Web
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: davidandrewtaylor@hotmail.com               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+Summary: WSDL Tool parse problem with XML Namespaces
+Description of Problem:
+Tried to generate a web service proxy for an apache axis web service; but 
+it failed to generate the proxy because the current WSDL tool does not 
+handle WSDL files that heavily use namespaces (it works with the MS.NET 
+WSDL tool).
+Here is an example of output from Apache axis:
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" 
+The "wsdl" namespace prefix seems to be causing the problem as it works 
+if the WSDL starts with:
+<definitions ... (without the prefix).
+Steps to reproduce the problem:
+1. Try to generate a web service proxy when Apache Axis is used for the 
+web service server.
+Actual Results:
+WSDL Tool should be able to generate a proxy.
+Expected Results:
+It should generate the proxy (as does MS.NET implementation)
+Additional Information:
+If you use the standard System.XML classes to parse the WSDL this problem 
+should go away because System.Xml provides good namespace support.
+The error:
+Error: Document element did not appear.
+in System.Xml.XmlTextReader:Read()
+------- Additional Comments From lluis@ximian.com  2003-12-08 05:45 -------
+I tried to import a wsdl document that uses a namespace prefix in the
+definitions tag and it works. Can you attach the complete wsdl file
+that fails?
+------- Additional Comments From davidandrewtaylor@hotmail.com  2004-02-05 00:16 -------
+I have tried this test again on MONO 0.30 and found some additional 
+interesting info.  We are running Apache Axis under BEA WebLogic, 
+and when attempting proxy generation from MS.NET it works fine; but 
+the MONO WSDL tool gives the error above.  I wanted to expose this 
+as a test case to the MONO team, so front-ended the service with 
+apache on Port 80 (to expose it through our firewall) with apaching 
+forwarding the requests to the internal port.  However when hitting 
+it via apache the problem does not exist.  I wish I could be more 
+specific...We may need to get a network monitor and capture traffic 
+to figure this one out?
+Here is the exact output when using the WSDL tool directly against 
+Axis/WebLogic without front-ending it with Apache:
+Mono Web Services Description Language Utility
+Error: System.Xml.XmlException: Document element did not appear.
+in <0x00262> System.Xml.XmlTextReader:Read ()
+in <0x00097> System.Xml.XmlReader:MoveToContent ()
+in <0x00116> Mono.WebServices.Driver:Run (string[])
+** (/usr/bin/wsdl.exe:5811): CRITICAL **: file mono-hash.c: line 440 
+(mono_g_hash_table_remove): assertion `hash_table != NULL' failed
+** (/usr/bin/wsdl.exe:5811): CRITICAL **: file mono-hash.c: line 440 
+(mono_g_hash_table_remove): assertion `hash_table != NULL' failed
+[root@localhost test]#