Hi Bob,
The trick to UDDI is to realize that it is not an invocation middle-ware
agent. It is simply a registry.
To invoke a web service, the client has to be prepared to call a specific
web service interface. The interface for web service is described by a
WSDL file - and this file is useful for building a proxy that allows a
client application to prepare itself for calling an end-point that has
separately implemented the service described by the WSDL file.
When you register a web service endpoint in UDDI, several things are
typically done. First, you register the interface as a tModel - that
tModel details URL points to the WSDL file.
Then you register the end point - and make it have an implementation
signature that includes the GUID that references the tModel that describes
the interface. This allows UDDI callers who know a specific tModel
interface ID to find end points that have promised to have an
implementation of that interface. They would call the UDDI "FindBinding"
method to make such a call, and then select an end point URL to bind to.
The other thing you can do is remember a specific binding end point guid.
This is the ID assigned to the UDDI BindingReference and represents an
abstract location associated with a specific implementation of a service
end point. If your client calls the UDDI GetBindingDetail method, passing
this GUID, it can find out if the endpoint URL has changed for a specific
binding.
In this way, UDDI lets you register, discover, and manage the lifecycle of
a set of web service end points. You can find unknown implementations of
specific interfaces. You can find what services are available,and then
build client side proxies for them if you don't already have support for a
specific interface in your callers code. You can dynamically find a new
end point location for a specific binding that you know about. This latter
case lets you easily remember a binding ID in your client code, and then
find the right place to call at runtime if the location you remembered has
changed.
I hope this helps
Dan Rogers
Microsoft Corporation
--------------------