|
Comments
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
Product Review Microsoft UDDI SDK 2.0
Microsoft UDDI SDK 2.0
By: Joe Mitchko
Apr. 22, 2003 12:00 AM
One of the least appreciated standards in the Web services world is Universal Description, Discovery, and Integration - UDDI. The concepts of the UDDI standard are fairly simple - link Web service consumers to providers. If you are a provider, you want to advertise who you are, the nature of your services, and technical information regarding the types of interfaces you provide. For a consumer, you want to be able to quickly look up services according to what type of business you are interested in, the type of service, and other factors. Like anything these days, what sounds simple gets rather complicated, and as a system developer you need to be an expert in various Web technologies, including HTTP and XML protocols. Luckily, we have development toolkits to make it easier for the average Joe (like me) to get the job done. This review will not only help you understand what the Microsoft UDDI SDK version 2.0 provides, but should also give you a head start to do your own interfacing with UDDI services using .NET. The UDDI SDK provides all the tools necessary for a .NET developer to interact with a UDDI registry. The examples I'll use in this review will be coded in C#, but with the Command Language Runtime (CLR) architecture of .NET programming in other languages such as Visual Basic will be very similar. In fact, they will use the same assembly components across all languages. The same assembly can also be used from COM clients such as the languages in the Visual Studio 6.0 product.
Installation The UDDI SDK version 2.0 is included in the Core section of the Microsoft Windows Software Development Kit and instructions for download are available from the UDDI section on Microsoft Developer Network (MSDN). Installation is straightforward: just be sure to include the "Core SDK" components and you should be done in a few minutes. The installation includes an extensive amount of documentation and coding examples, a wizard for publishing services from within Visual Studio .NET 2003, and sample applications that we will cover later. The actual framework code is in the Microsoft.Uddi.dll assembly, located in the bin directory of the Microsoft SDK installation. Run the UddiSdkRegister executable and the assembly will be registered and ready to use.
Finding a Business Partner Once you have the BusinessList object, you can quickly ascertain whether you had any businesses listed by checking the number of BusinessInfo objects in BusinessInfos collection using the "Count" property (see Listing 1). Now it's just a matter of iterating through each of the BusinessInfo objects to read the business description and other information about the business. One of the "key" data items is the "BusinessKey", which is a globally unique identifier (GUID) used by the UDDI registry to identify the business. UDDI also provides these keys for services, bindings, and a thing called a tModel. All of these keys can be used to work your way down from the top level of the repository (the business name) to the real technical descriptions of the service bindings. UDDI represents this information in a tree-like fashion, and the UDDI SDK is geared to help you navigate easily through the hierarchy to get the data that you need. Other objects in the SDK help you look up Web services by the service type, binding, and tModel. You may be asking at this point, what is this "tModel" thing? In a nutshell, it's a unique signature defining the service at a very technical level (implementation, platform specific, etc.) that helps Web service consumers who are looking for an exact fit of a producer. It's really up to the business partners to define what that exact fit is but it often equates to an interface definition expressed in the Web Service Description Language (WSDL).
Publishing Your Service To begin, we'll need to configure the "UddiConnection" object with the URL of the UDDI server, and enter a user name and password that will be authenticated by the server. In most cases, the URL will use secure HTTP (https://) for the publishing activity. You don't want hackers in there publishing things that you as a business don't support (or worse). Next, you need to create a SaveBusiness object and set the various properties in the object about your business including name, description, and other vital data. Once you're done setting up your business information, you again make a call to the Send() method and wait for a response from the UDDI server (see Listing 2). One thing I haven't mentioned so far is that the UDDI SDK has an extensive number of exception handling objects to help ascertain whether things are properly published or looked up. All you need to do as a C# developer is to surround the SDK code in a try block and wait to see whether any exceptions are caught during the operation. No catch means everything performed correctly.
Support In addition, the SDK is based on the 2.0 version of the UDDI specification, which is the primary version of the specification that is implemented by the various UDDI server vendors. The UDDI SDK provides a great opportunity to learn all about how UDDI works and offers you practical programming experience interfacing with a UDDI registry. The API set provided in the SDK is easy to pick up and learn. Also, you will find that almost all of the public UDDI registries out there implement the UDDI 2.0 specification, and they are available through the UDDI SDK examples that come with the package. Finally, you will find several other Microsoft UDDI SDKs out there for download. There is another beta version out for .NET framework 1.0, and a further version for the UDDI 1.0 specification. These are all similar from the programming standpoint but not as comprehensive or as well documented as the version 2.0 release.
Conclusion Reader Feedback: Page 1 of 1
SOA World Latest Stories
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
|
SYS-CON Featured Whitepapers
Most Read This Week |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||