How to invoke a web service through UDDI

B

Bob

I have creat test web service in losthost, and register it on the
http://test.uddi.microsoft.com. Then how can I use a web application to
invoke this web service? Could some one give me a sample code? :) Thanks!

P.S.
I want this web application could 'find' this web service and then invoke it.
 
D

Dan Rogers

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
--------------------
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,997
Messages
2,570,240
Members
46,828
Latest member
LauraCastr

Latest Threads

Top