WS-Talk and UDDI WS-Talk and UDDI
Department of Computer Science Royal Holloway, University of London Fionn Murtagh, Pedro Contreras {fionn, pedro} @ cs.rhul.ac.uk
UDP
WS-Talk and UDDI WS-Talk and UDDI Department of Computer Science - - PowerPoint PPT Presentation
WS-Talk and UDDI WS-Talk and UDDI Department of Computer Science Royal Holloway, University of London Fionn Murtagh, Pedro Contreras {fionn, pedro} @ cs.rhul.ac.uk UDP Introduction Whats UDDI Searches in UDDI UDDI
Department of Computer Science Royal Holloway, University of London Fionn Murtagh, Pedro Contreras {fionn, pedro} @ cs.rhul.ac.uk
UDP
Universal Description Discovery and Integration is de facto standard web services catalogue. It consists of a directory where business can register and search for web services, centred around a WS interface described by a WSDL document. It is based on a set of specifications (OASIS standard) with public and private implementations and providing two web services: Inquiry : provide functions such as find_business, get_businessDetails Publisher : provide functions such as save_business, delete_business All these operations are based in SOAP messages.
Three can of searches can be performed using UDDI registry:
contact, and identifiers about a company.
categorization and taxonomies, such as NAICS, ISO3166, and UNSPSC
Web service, as well as information about how to execute these services.
Acumen Technology, http://acumentechnologies.com BEA, WebLogic Server UDDI Registry Fujitsu, http://www.fujitsu.com/global/services/software/interstage/ IBM, http://www-306.ibm.com/software/solutions/webservices/uddi/ Infravio, http://www.infravio.com/products/ IONA, http://www.iona.com/products/artix/welcome.htm Microsoft, http://www.microsoft.com/windowsserver2003/technologies/idm/uddi/default.mspx Novell, http://developer.novell.com/uddi/ Oracle, http://www.oracle.com/technology/tech/webservices/htdocs/uddi/index.html SAP, http://www.sap.com:80/solutions/netweaver/index.epx Select Business Solutions, http://www.selectbs.com/products/select-uddiserver.htm SOA Software, http://www.soa.com/index.php/section/products/registry_manager/ Sun Microsystems, Java Web Services Developer Pack. http://java.sun.com/webservices/jwsdp/index.jsp Systinet, http://www.systinet.com/products/sr/overview
Apache.org, JUDDI, http://ws.apache.org/juddi/
・Open Source and Platform Independent ・Supports for JDK 1.3.1 and later ・UDDI version 2.0 compliant implementation ・Use with any relational database that supports ANSI standard SQL (MySQL, DB2, Sybase, JDataStore, HSQLDB, etc.) ・Deployable on any Java application server that supports the Servlet 2.3 specification (Jakarta Tomcat, JOnAS, WebSphere, WebLogic, Enterprise Server, JRun, etc.) ・jUDDI registry supports a clustered deployment configuration. ・Easy integration with existing authentication systems
UDDI Browser, http://uddibrowser.org/
Still early version but gives a GUI to work from the client point of view
UDDI4J.org, http://uddi4j.sourceforge.net/
UDDI4J contains an implementation of the client side of UDDI from which the application needs to publish, find, and to bind a Web service. It also includes the source of the code, the complete JavaDoc documentation, and sample applications.
SOAP:LITE, http://sourceforge.net/projects/soaplite/ or http://soaplite.com/
Collection of Perl modules that provides a simple and lightweight implementation of SOAP, XML-RPC, UDDI and other webservice-related spec.
PHPUDDI, http://phpuddi.sourceforge.net/
Stand-alone PHP classes with no external dependencies, supporting basic UDDI inquiry APIs. However, not able to publish documents. Not as relevant as those above.
JUDDI API (proprietary) get_registryInfo find_publisher get_publisherDetail save_publisher delete_publisher JUDDI Inquiry API find_business find_service find_binding find_tModel find_relatedBusinesses get_businessDetail get_businessDetailExt get_serviceDetail get_bindingDetail get_tModelDetail JUDDI Publish API get_authToken get_registeredInfo discard_authToken save_business save_service save_binding save_tModel delete_business delete_service delete_binding delete_tModel add_publisherAssertions set_publisherAssertions get_publisherAssertions delete_publisherAssertion get_assertionStatusRepo
Query
<?xml version="1.0" encoding="utf-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <find_publisher maxRows="100" generic="1.0" xmlns="urn:juddi-org:api_v1"> <name>***</name> </find_publisher> </soapenv:Body> </soapenv:Envelope>
Results
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <publisherList generic="1.0" operator="jUDDI.org" xmlns="urn:juddi-org:api_v1"> <publisherInfos/> </publisherList> </soapenv:Body> </soapenv:Envelope>
Find_plublisher
– Development effort needed.
– DB reverse engineering needed to understand data structure.
Which UDDI version? JUDDI supports UDDI standard version 2, but currently the specification is v. 3.
Corporate/private: internal registry behind a firewall Affiliated: controlled environment where limited access is granted Public: open registry UDDI in WS-Talk? Are we going to use a single centralised repository, or a set of distributed ones. The solution for this may be in the use of ActiveBPEL engine.
Others issues?