When it comes to Web Services, more and more systems are becoming increasingly complex. Many of them offer multiple endpoints - commonly one per major sub-application - while sharing a common core endpoint for initial authentication, session management, etc. Likewise, these endpoints share a common set of core datatypes, again usually a User, Session, and other such types. But trying to use these complex endpoints with Visual Studio is a downright pain. The Web References function insists on creating separate .Net namespaces for each different endpoint, even if the WSDL files for the two endpoints share a common XSD file that defines the shared core datatypes. Consequently, .Net refuses to acknowledge that a User or Session object retrieved from the core authentication endpoint really is the same User object that is supposed to be passed as a parameter in the billing, or personnel management, or other such sub-application endpoint.
-
Rant of sorts on multiple .Net Web references (12 messages)
- Posted by: Jack Vaughan
- Posted on: January 05 2007 09:41 EST
Scott Balmos, in A Rant of Sorts on Multiple .Net Web References, admits that Visual Studio 2005 is a nice IDE, but when it comes to working with complex SOAP-based applications which have multiple endpoints and shared core, it can be a pain. Balmos discusses his experiences with the Web References system that transparently manages the annoyance of generating type stub and proxy classes from a WSDL file.Threaded Messages (12)
- bla bla by ahmet a on January 05 2007 10:34 EST
- Re: bla bla by Maris Orbidans on January 05 2007 10:48 EST
-
Re: bla bla by Werner Punz on January 05 2007 11:06 EST
- Re: bla bla by Rogerio Saulo on January 05 2007 11:17 EST
-
Re: bla bla by Werner Punz on January 05 2007 11:06 EST
- Re: bla bla by Maris Orbidans on January 05 2007 10:48 EST
- Re: Rant of sorts on multiple .Net Web references by Krishnan Subramanian on January 05 2007 11:47 EST
- Re: Rant of sorts on multiple .Net Web references by Konstantin Ignatyev on January 05 2007 12:03 EST
-
Re: Rant of sorts on multiple .Net Web references by Krishnan Subramanian on January 05 2007 12:18 EST
- Re: Rant of sorts on multiple .Net Web references by Konstantin Ignatyev on January 05 2007 02:46 EST
-
Re: Rant of sorts on multiple .Net Web references by Krishnan Subramanian on January 05 2007 12:18 EST
- Re: Rant of sorts on multiple .Net Web references by Konstantin Ignatyev on January 05 2007 12:03 EST
- This is not a .NET community by Floyd Marinescu on January 05 2007 15:12 EST
- Re: This is not a .NET community by Mark N on January 05 2007 22:44 EST
- Visual developemt in general is a pain in serious projects... by Artur Karazniewicz on January 06 2007 03:04 EST
- serious ANT by Maris Orbidans on January 06 2007 10:46 EST
-
bla bla[ Go to top ]
- Posted by: ahmet a
- Posted on: January 05 2007 10:34 EST
- in response to Jack Vaughan
i think this should have been posted to theserverside.net -
Re: bla bla[ Go to top ]
- Posted by: Maris Orbidans
- Posted on: January 05 2007 10:48 EST
- in response to ahmet a
i think this should have been posted to theserverside.net
yes, indeed ! -
Re: bla bla[ Go to top ]
- Posted by: Werner Punz
- Posted on: January 05 2007 11:06 EST
- in response to Maris Orbidans
Besides that, I do not thing that it is a fault of the ide, working with Soap generally is a pain. The tools just ease it somewhat.i think this should have been posted to theserverside.net
yes, indeed ! -
Re: bla bla[ Go to top ]
- Posted by: Rogerio Saulo
- Posted on: January 05 2007 11:17 EST
- in response to Werner Punz
It´s not on the Theserverside.Net because there is a big lack of posts........ -
Re: Rant of sorts on multiple .Net Web references[ Go to top ]
- Posted by: Krishnan Subramanian
- Posted on: January 05 2007 11:47 EST
- in response to Jack Vaughan
In any case, the author's remark that: The Web References function insists on creating separate .Net namespaces for each different endpoint, even if the WSDL files for the two endpoints share a common XSD file that defines the shared core datatypes. Consequently, .Net refuses to acknowledge that a User or Session object retrieved from the core authentication endpoint really is the same User object that is supposed to be passed as a parameter in the billing, or personnel management, or other such sub-application endpoint. is not true. Assuming the author of the post was trying to use either ASP.NET Web Services or Windows Communication Foundation, both of these technologies have command line tools (wsdl.exe in the case of the former, and svcutil.exe in the case of the latter). Visual Studio 2005 simply invokes these tools via GUI interfaces. More importantly, the point I was trying to make was that both the wsdl.exe and the svcutil.exe tool provide options to "share" types that are common across different services. Thus you avoid type duplication by only having one set of types common across multiple services. And it is relatively trivial to have the Visual Studio IDE pass optional parameters to the wsdl.exe/svcutil.exe to avoid type duplication. -krish -
Re: Rant of sorts on multiple .Net Web references[ Go to top ]
- Posted by: Konstantin Ignatyev
- Posted on: January 05 2007 12:03 EST
- in response to Krishnan Subramanian
And it is relatively trivial to have the Visual Studio IDE pass optional parameters to the wsdl.exe/svcutil.exe to avoid type duplication.
And why there is a need to pass parameter at all if included XSD is the same? -
Re: Rant of sorts on multiple .Net Web references[ Go to top ]
- Posted by: Krishnan Subramanian
- Posted on: January 05 2007 12:18 EST
- in response to Konstantin Ignatyev
And why there is a need to pass parameter at all if included XSD is the same?
An IDE cannot always second guess what the developer's intention in that context is. In any case, like I said, the IDE gives you the control to change what the default behavior is. -krish -
Re: Rant of sorts on multiple .Net Web references[ Go to top ]
- Posted by: Konstantin Ignatyev
- Posted on: January 05 2007 14:46 EST
- in response to Krishnan Subramanian
An IDE cannot always second guess what the developer's intention in that context is. In any case, like I said, the IDE gives you the control to change what the default behavior is.
I expect that IDE and software in general use "make sense" defaults and allow me to override that behavior if necessary. In this case it seems like default does not make sense. -
This is not a .NET community[ Go to top ]
- Posted by: Floyd Marinescu
- Posted on: January 05 2007 15:12 EST
- in response to Jack Vaughan
I don't think this post belongs on TheServerSide.com. -
Re: This is not a .NET community[ Go to top ]
- Posted by: Mark N
- Posted on: January 05 2007 22:44 EST
- in response to Floyd Marinescu
I don't think this post belongs on TheServerSide.com.
Well, at least it got some posts. :) -
Visual developemt in general is a pain in serious projects...[ Go to top ]
- Posted by: Artur Karazniewicz
- Posted on: January 06 2007 03:04 EST
- in response to Jack Vaughan
This is experience of mine. Don't know You have same? All visual helpers/wizards seems to be appealing at the beginning. Helps You do easy or average things very easy. But when it comes to something serious and really complicated (which is the case in most real projects) - all that thighs handled under covers by IDE, without Your full control becomes serious pain. It's why we always use ant as Our build tool - doesn't matter what IDE we use for development. At the end of day, project SHOULD build using ant. I'd been using VC++ 6.0 around 1997 and I have very bad experience with legacy, long maintained project built with VC. Lot's co binary configurations, problems with versioning, with synchronizations within team, and - sometimes - You just couldn't really do what You exactly wanted. No flamewar, but it's why I like Eclipse. It just helps You do core things with excellent visual support (Editor, XML, JDE) and gives You freedom to do harder Your way. Artur -
serious ANT[ Go to top ]
- Posted by: Maris Orbidans
- Posted on: January 06 2007 10:46 EST
- in response to Artur Karazniewicz
use ant as Our build tool
Yes, I agree. For this reason I like NetBeans because its build system is based on ANT and the best thing is that you can modify and tweak project build process as you like. In one of recent projects we decided to migrate from SJAS to JBoss, but the produced EAR could not be deployed on JBoss. It required only some minor changes like different switches for web service compilers and JBoss specific archive names (sar). Fortunately with NetBeans I just had to modify existing ANT file, instead of rewriting whole build script. Do you wonder why we had to use JBoss instead of SJAS ? Because SJAS in Linux uses too many file descriptors. And guess what... Today I installed latest Glassfish and JDK 6 to test how it works and I found that this behavior hasn't changed a bit. I started glassfish and opened admin console and, lo and behold , lsof shows more than 300 open file descriptors!