UDDI: one kind of XML Web Services Author: Chris Lovett [url href = http: //www.microsoft.com/china/msdn/voices/12182000-test.htm] UDDI query example [/ url] (requires Internet Explorer 5. x) [URL HREF = http://www.uddi.org/] General Description, Discovery and Integration (UDDI) Service [/ URL] (English) Currently running directly in Microsoft, IBM, and Ariba. This is a online web service that can be used to dynamically discover other online services in the application. This service is completely packaged in a simple XML interface. For experienced XML readers, passing XML between client applications and intermediates, is not new at all. We did this since 1998. However, we are also very happy to see other services that the industry develops like UDDI in this direction. So let us focus on the basic facts. What you really need to know is that you can post XML's URL. After work, we have found the following three URLs:
Http://uddi.microsoft.com/inquire http://uddi.ariba.com/uddiprocessor.aw/ad/process http://www-3.ibm.com/services/uddi/inquiryapi
They are UDDI entry points for "query". The entry points for updates are different from them, and usually use the HTTPS address for security reasons.
What kind of XML is posted?
First, XML must be UTF-8 (carefully simplified by UDDI project) format, and must be packaged in the SOAP envelope. The SOAP envelope looks like this:
XML Version = '1.0' Encoding = 'UTF-8'?>
The content of the element can be from [URL HREF = http://www.uddi.org/schema/uddi_1.xsd] UDDI Architecture [/ URL] (English)
Any query. For example, the following query will return more information about Microsoft when placed in a SOAP envelope:
Note: We switch the namespace from the SOAP namespace to the "UDDI-ORG: API" namespace. Many other operations can also be performed in the Find_business query.
How to post XML?
You can use the XMLHTTP control provided by MSXML in the JScript file or HTML page, as shown below:
http = new activiXObject ("Microsoft.xmlhttp"); http.open ("post", url, false); http.setRequestHeader ("accept", "text / xml"); http.setrolquestHeader ("cache-control", "no-cache"); http.senament, '""); http.send (msg); in this case, I decided to be a good SOAP citizen, so set SOAPAction in the HTTP header. Because I need dynamic results every time, I also decided to accept only text / XML results and close all cache. Of course, in the additional sample code, I am using the callback to make these operations asynchronously.
What is it?
Of course, XML. In this case, you get a detailed list of the
As a world-leading personal and business software vendors, we are committed to providing innovative products and services to meet our customers' needs description> BusinessKey, and use This will return information about this service: Then you can use ServiceKey gets more information about this service: Description> https://test.uddi.microsoft.com/publish accessPoint> Description> tModelInstanceInfo> tModelInstanceDetails> bindingTemplate> bindingTemplates> http://test.uddi.microsoft.com/ (English) On, two product access points http://uddi.microsoft.com/ (English) on. It also tells us that the UDDI query access point is to disclose by HTTP, and the release access point is in the protection of HTTPS. You can also use TMODELKEY information to find all registration services that provide UDDI Web services, as shown below: Return What is the effect of work? I found that two implementations of Microsoft and Ariba have some troublesome difference. For example, the implementation of Ariba requires all uppercases of UTF-8 and cannot process extra spaces in the XML declaration. To make these services implement complete interoperability, you must eliminate problems like this. I found that the response time is very satisfactory, but the synchronization of the data is a problem. I hope that the synchronization problem will improve over time. to sum up If you are creating applications that need to be dynamically connected to external business partners, you will undoubtedly consider connecting your application to the UDDI registry. Please imagine it as the DNS of the business application layer. Interestingly, you can add, change, and delete access points in real time, resolve a week or longer delay in DNS propagation. Many people will ask, how to do it after finding a company and its registration service in the UDDI directory. Indeed, UDDI does not claim to solve everything. Attempt to illustrate the main business of everything that has created, is a very heavy task and is almost impossible. UDDI Theory is that applications will know how to use certain well-known business protocols to operate, and these protocols are described in well-known ways so that you can dynamically find other services that support the protocol. Alternatively, you can also have a small number of well-known and reliable global business partners, through them you can simply use UDDI to find new services provided by it. In this case, you may have other reliable channels for downloading the adapters connected to each service. In short, UDDI did forward a big step in the correct direction. Chris Lovett is a programming manager for the Microsoft XML team.