UDDI - Panduan Cepat

UDDI adalah standar berbasis XML untuk mendeskripsikan, menerbitkan, dan menemukan layanan web.

  • UDDI adalah singkatan dari Universal Description, Discovery, and Integration.

  • UDDI adalah spesifikasi untuk registri layanan web yang terdistribusi.

  • UDDI adalah kerangka kerja terbuka yang tidak bergantung platform.

  • UDDI dapat berkomunikasi melalui SOAP, CORBA, Java RMI Protocol.

  • UDDI menggunakan Web Service Definition Language (WSDL) untuk menjelaskan antarmuka ke layanan web.

  • UDDI dilihat dengan SOAP dan WSDL sebagai salah satu dari tiga standar dasar layanan web.

  • UDDI adalah inisiatif industri terbuka, memungkinkan bisnis untuk menemukan satu sama lain dan menentukan bagaimana mereka berinteraksi melalui Internet.

UDDI memiliki dua bagian -

  • Registri dari semua metadata layanan web, termasuk penunjuk ke deskripsi WSDL layanan.

  • Satu set definisi tipe port WSDL untuk memanipulasi dan mencari registri itu.

Sejarah UDDI

  • UDDI 1.0 awalnya diumumkan oleh Microsoft, IBM, dan Ariba pada bulan September 2000.

  • Sejak pengumuman awal, inisiatif UDDI telah berkembang dengan menyertakan lebih dari 300 perusahaan termasuk Dell, Fujitsu, HP, Hitachi, IBM, Intel, Microsoft, Oracle, SAP, dan Sun.

  • Pada Mei 2001, Microsoft dan IBM meluncurkan situs operator UDDI pertama dan mengaktifkan registri UDDI.

  • Pada bulan Juni 2001, UDDI mengumumkan Versi 2.0.

  • Saat tutorial ini dibuat, situs Microsoft dan IBM telah mengimplementasikan spesifikasi 1.0 dan merencanakan dukungan 2.0 dalam waktu dekat.

  • Saat ini UDDI disponsori oleh OASIS.

Proses Antarmuka Mitra

Proses Antarmuka Mitra (PIP) adalah antarmuka berbasis XML yang memungkinkan dua mitra dagang untuk bertukar data. Puluhan PIP sudah ada. Beberapa dari mereka terdaftar di sini -

  • PIP2A2 - Memungkinkan mitra untuk menanyakan informasi produk lainnya.

  • PIP3A2 - Memungkinkan mitra untuk menanyakan harga dan ketersediaan produk tertentu.

  • PIP3A4 - Memungkinkan mitra untuk mengirimkan pesanan pembelian elektronik dan menerima pengakuan pesanan.

  • PIP3A3 - Memungkinkan mitra untuk mentransfer konten keranjang belanja elektronik.

  • PIP3B4 - Memungkinkan mitra untuk menanyakan status pengiriman tertentu.

Registri UDDI Pribadi

Sebagai alternatif untuk menggunakan registri UDDI jaringan federasi publik yang tersedia di Internet, perusahaan atau grup industri dapat memilih untuk menerapkan registri UDDI pribadi mereka sendiri.

Layanan eksklusif ini dirancang semata-mata untuk memungkinkan anggota perusahaan atau grup industri untuk berbagi dan mengiklankan layanan di antara mereka sendiri.

Terlepas dari apakah registri UDDI adalah bagian dari jaringan federasi global atau registri yang dimiliki dan dioperasikan secara pribadi, satu hal yang mengikat mereka semua adalah API layanan web umum untuk menerbitkan dan mencari lokasi bisnis dan layanan yang diiklankan dalam registri UDDI.

Bisnis atau perusahaan dapat mendaftarkan tiga jenis informasi ke dalam registri UDDI. Informasi ini terkandung dalam tiga elemen UDDI.

Ketiga elemen ini adalah -

  • Halaman putih,
  • Yellow Pages, dan
  • Halaman Hijau.

Halaman putih

Halaman putih berisi -

  • Informasi dasar tentang perusahaan dan bisnisnya.

  • Informasi kontak dasar termasuk nama bisnis, alamat, nomor telepon kontak, dll.

  • Pengenal unik untuk nomor pajak perusahaan. Informasi ini memungkinkan orang lain menemukan layanan web Anda berdasarkan identifikasi bisnis Anda.

Halaman Kuning

  • Halaman kuning berisi lebih banyak rincian tentang perusahaan. Ini termasuk deskripsi jenis kemampuan elektronik yang dapat ditawarkan perusahaan kepada siapa saja yang ingin berbisnis dengannya.

  • Yellow Page menggunakan skema kategorisasi industri yang diterima secara umum, kode industri, kode produk, kode identifikasi bisnis dan sejenisnya untuk memudahkan perusahaan mencari melalui daftar dan menemukan apa yang mereka inginkan.

Halaman Hijau

Halaman hijau berisi informasi teknis tentang layanan web. Halaman hijau memungkinkan seseorang untuk mengikat ke layanan Web setelah ditemukan. Ini termasuk -

  • Berbagai antarmuka
  • Lokasi URL
  • Informasi penemuan dan data serupa diperlukan untuk menemukan dan menjalankan layanan Web.

NOTE- UDDI tidak dibatasi untuk mendeskripsikan layanan web berdasarkan SOAP. Sebaliknya, UDDI dapat digunakan untuk mendeskripsikan layanan apa pun, dari satu halaman web atau alamat email hingga layanan SOAP, CORBA, dan Java RMI.

Arsitektur teknis UDDI terdiri dari tiga bagian -

Model Data UDDI

Model Data UDDI adalah Skema XML untuk menggambarkan bisnis dan layanan web. Model data dijelaskan secara rinci dalam bab "Model Data UDDI".

Spesifikasi UDDI API

Ini adalah spesifikasi API untuk mencari dan menerbitkan data UDDI.

Layanan UDDI Cloud

Ini adalah situs operator yang menyediakan implementasi spesifikasi UDDI dan menyinkronkan semua data secara terjadwal.

UDDI Business Registry (UBR), juga dikenal sebagai Public Cloud, adalah sistem konseptual tunggal yang dibangun dari beberapa node yang datanya disinkronkan melalui replikasi.

Layanan cloud saat ini menyediakan direktori yang terpusat secara logis, tetapi didistribusikan secara fisik. Artinya, data yang dikirimkan ke satu node root secara otomatis akan direplikasi di semua node root lainnya. Saat ini, replikasi data terjadi setiap 24 jam.

Layanan cloud UDDI saat ini disediakan oleh Microsoft dan IBM. Ariba awalnya berencana untuk menawarkan operator juga, tetapi kemudian mundur dari komitmen tersebut. Operator tambahan dari perusahaan lain, termasuk Hewlett-Packard, direncanakan dalam waktu dekat.

Anda juga dapat mengatur registri UDDI pribadi. Misalnya, perusahaan besar dapat menyiapkan registri UDDI pribadinya sendiri untuk mendaftarkan semua layanan web internal. Karena registri ini tidak secara otomatis disinkronkan dengan simpul UDDI akar, mereka tidak dianggap sebagai bagian dari awan UDDI.

UDDI menyertakan skema XML yang menjelaskan struktur data berikut -

  • businessEntity
  • businessService
  • bindingTemplate
  • tModel
  • publisherAssertion

Struktur Data businessEntity

Struktur entitas bisnis mewakili penyedia layanan web. Di dalam registri UDDI, struktur ini berisi informasi tentang perusahaan itu sendiri, termasuk informasi kontak, kategori industri, pengidentifikasi bisnis, dan daftar layanan yang disediakan.

Berikut adalah contoh entri registri UDDI bisnis fiktif -

<businessEntity businessKey = "uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40"
   operator = "http://www.ibm.com" authorizedName = "John Doe">
   <name>Acme Company</name>
   <description>
      We create cool Web services
   </description>
	
   <contacts>	
      <contact useType = "general info">
         <description>General Information</description>
         <personName>John Doe</personName>
         <phone>(123) 123-1234</phone>
         <email>[email protected]</email>
      </contact>		
   </contacts>
	
   <businessServices>
      ...
   </businessServices>
   <identifierBag>	
      <keyedReference tModelKey = "UUID:8609C81E-EE1F-4D5A-B202-3EB13AD01823" 
         name = "D-U-N-S" value = "123456789" />
   </identifierBag>
	
   <categoryBag>	
      <keyedReference tModelKey = "UUID:C0B9FE13-179F-413D-8A5B-5004DB8E5BB2" 
         name = "NAICS" value = "111336" />			
   </categoryBag>		
</businessEntity>

Struktur Data BusinessService

Struktur layanan bisnis mewakili layanan web individu yang disediakan oleh entitas bisnis. Penjelasannya mencakup informasi tentang cara mengikat ke layanan web, jenis layanan web apa, dan kategori taksonomi apa yang dimilikinya.

Berikut adalah contoh struktur layanan bisnis untuk layanan web Hello World.

<businessService serviceKey = "uuid:D6F1B765-BDB3-4837-828D-8284301E5A2A"
   businessKey = "uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40">
   <name>Hello World Web Service</name>
   <description>A friendly Web service</description>
   <bindingTemplates>
      ...
   </bindingTemplates>
   <categoryBag />
</businessService>

Perhatikan penggunaan Universal Unique Identifiers (UUIDs) dalam atribut businessKey dan serviceKey . Setiap entitas bisnis dan layanan bisnis secara unik diidentifikasi di semua registri UDDI melalui UUID yang ditetapkan oleh registri saat informasi pertama kali dimasukkan.

bindingTemplate Data Structure

Template binding adalah deskripsi teknis dari layanan web yang diwakili oleh struktur layanan bisnis. Layanan bisnis tunggal mungkin memiliki beberapa template yang mengikat. Template pengikatan mewakili implementasi aktual dari layanan web.

Berikut adalah contoh template pengikat untuk Hello World.

<bindingTemplate serviceKey = "uuid:D6F1B765-BDB3-4837-828D-8284301E5A2A"
   bindingKey = "uuid:C0E6D5A8-C446-4f01-99DA-70E212685A40">
   <description>Hello World SOAP Binding</description>
   <accessPoint URLType = "http">http://localhost:8080</accessPoint>
   
   <tModelInstanceDetails>
      <tModelInstanceInfo tModelKey = "uuid:EB1B645F-CF2F-491f-811A-4868705F5904">
         <instanceDetails>
            <overviewDoc>
               <description>
                  references the description of the WSDL service definition
               </description>
               
               <overviewURL>
                  http://localhost/helloworld.wsdl
               </overviewURL>
            </overviewDoc>
         </instanceDetails>
      </tModelInstanceInfo>
   </tModelInstanceDetails>
</bindingTemplate>

Karena layanan bisnis mungkin memiliki beberapa template yang mengikat, layanan dapat menentukan implementasi yang berbeda dari layanan yang sama, masing-masing terikat ke kumpulan protokol yang berbeda atau alamat jaringan yang berbeda.

tModel Struktur Data

tModel adalah tipe data inti terakhir, tetapi berpotensi paling sulit dipahami. tModel adalah singkatan dari model teknis.

tModel adalah cara untuk menjelaskan berbagai bisnis, layanan, dan struktur template yang disimpan di dalam registri UDDI. Konsep abstrak apa pun dapat didaftarkan dalam UDDI sebagai tModel. Misalnya, jika Anda mendefinisikan tipe port WSDL baru, Anda dapat mendefinisikan tModel yang mewakili tipe port tersebut dalam UDDI. Kemudian, Anda dapat menentukan bahwa layanan bisnis tertentu mengimplementasikan jenis port tersebut dengan mengaitkan tModel dengan salah satu templat pengikatan layanan bisnis tersebut.

Berikut adalah contoh tModel yang mewakili tipe port Antarmuka Hello World.

<tModel tModelKey = "uuid:xyz987..." operator = "http://www.ibm.com" 
   authorizedName = "John Doe">
   <name>HelloWorldInterface Port Type</name>
   <description>
      An interface for a friendly Web service
   </description>
	
   <overviewDoc>
      <overviewURL>
         http://localhost/helloworld.wsdl
      </overviewURL>
   </overviewDoc>
</tModel>

publisherAssertion Data Structure

Ini adalah struktur hubungan yang menempatkan dua atau lebih struktur businessEntity ke dalam asosiasi menurut jenis hubungan tertentu, seperti anak perusahaan atau departemen.

Struktur publisherAssertion terdiri dari tiga elemen: fromKey (businessKey pertama), toKey (kedua businessKey), dan keyedReference.

KeyedReference menunjukkan jenis hubungan yang ditegaskan dalam hal pasangan keyValue keyName dalam tModel, yang secara unik direferensikan oleh tModelKey.

<element name = "publisherAssertion" type = "uddi:publisherAssertion" />
<complexType name = "publisherAssertion">
   <sequence>
      <element ref = "uddi:fromKey" />
      <element ref = "uddi:toKey" />
      <element ref = "uddi:keyedReference" />
   </sequence>
</complexType>

Registri tidak akan berguna tanpa beberapa cara untuk mengaksesnya. Standar UDDI versi 2.0 menetapkan dua antarmuka bagi konsumen layanan dan penyedia layanan untuk berinteraksi dengan registri.

Layanan yang digunakan konsumen Inquiry Interface untuk menemukan layanan, dan penyedia layanan menggunakan Publisher Interface untuk membuat daftar layanan.

Inti dari antarmuka UDDI adalah definisi Skema XML UDDI. Ini menentukan tipe data UDDI fundamental yang melaluinya semua informasi mengalir.

Antarmuka Penerbit

Antarmuka Penerbit menentukan enam belas operasi untuk penyedia layanan yang mengelola entri di registri UDDI -

  • get_authToken- Mengambil token otorisasi. Semua operasi antarmuka Penerbit mengharuskan token otorisasi yang valid dikirimkan bersama permintaan.

  • discard_authToken- Memberi tahu registri UDDI untuk tidak lagi menerima token otorisasi yang diberikan. Langkah ini sama dengan keluar dari sistem.

  • save_business - Membuat atau memperbarui informasi entitas bisnis yang terdapat dalam registri UDDI.

  • save_service - Membuat atau memperbarui informasi tentang layanan web yang disediakan oleh badan usaha.

  • save_binding - Membuat atau memperbarui informasi teknis tentang implementasi layanan web.

  • save_tModel - Membuat atau memperbarui pendaftaran konsep abstrak yang dikelola oleh registri UDDI.

  • delete_business - Menghapus badan usaha tertentu dari registri UDDI sepenuhnya.

  • delete_service - Menghapus layanan web yang diberikan dari registri UDDI sepenuhnya.

  • delete_binding - Menghapus rincian teknis layanan web yang diberikan dari registri UDDI.

  • delete_tModel - Menghapus tModels tertentu dari registri UDDI.

  • get_registeredInfo - Menampilkan ringkasan dari semua registri UDDI saat ini melacak untuk pengguna, termasuk semua bisnis, semua layanan, dan semua tModels.

  • set_publisherAssertions - Mengelola semua pernyataan hubungan terlacak yang terkait dengan akun penerbit individu.

  • add_publisherAssertions - Menyebabkan satu atau lebih publisherAssertions ditambahkan ke koleksi pernyataan penerbit individu.

  • delete_publisherAssertions - Menyebabkan satu atau beberapa elemen publisherAssertion dihapus dari koleksi pernyataan penerbit.

  • get_assertionStatusReport - Memberikan dukungan administratif untuk menentukan status pernyataan penerbit saat ini dan yang beredar yang melibatkan salah satu pendaftaran bisnis yang dikelola oleh akun penerbit individu.

  • get_publisherAssertions - Memperoleh set lengkap pernyataan penerbit yang terkait dengan akun penerbit individu.

Antarmuka Permintaan

Antarmuka penyelidikan mendefinisikan sepuluh operasi untuk mencari registri UDDI dan mengambil detail tentang pendaftaran tertentu -

  • find_binding - Menampilkan daftar layanan web yang cocok dengan sekumpulan kriteria tertentu berdasarkan informasi pengikatan teknis.

  • find_business - Menampilkan daftar badan usaha yang cocok dengan sekumpulan kriteria tertentu.

  • find_ltservice - Menampilkan daftar layanan web yang cocok dengan sekumpulan kriteria tertentu.

  • find_tModel - Menampilkan daftar tModels yang cocok dengan sekumpulan kriteria tertentu.

  • get_bindingDetail - Mengembalikan informasi pendaftaran lengkap untuk template penjilidan layanan web tertentu.

  • get_businessDetail - Mengembalikan informasi pendaftaran untuk entitas bisnis, termasuk semua layanan yang disediakan entitas.

  • get_businessDetailExt - Mengembalikan informasi pendaftaran lengkap untuk badan usaha.

  • get_serviceDetail - Mengembalikan informasi pendaftaran lengkap untuk layanan web.

  • get_tModelDetail - Mengembalikan informasi pendaftaran lengkap untuk tModel.

  • find_relatedBusinesses - Menemukan bisnis yang telah terkait melalui model hubungan uddi-org:.

Misalnya perusahaan XYZ ingin mendaftarkan informasi kontaknya, deskripsi layanan, dan informasi akses layanan online dengan UDDI. Langkah-langkah berikut diperlukan -

  • Pilih operator yang akan bekerja. Setiap operator memiliki syarat dan ketentuan yang berbeda untuk memberi otorisasi akses ke replika registri.

  • Buat atau dapatkan klien UDDI, seperti yang disediakan oleh operator.

  • Dapatkan token otentikasi dari operator.

  • Daftarkan informasi tentang bisnis. Sertakan informasi sebanyak mungkin yang dapat membantu mereka yang mencari kecocokan.

  • Lepaskan token autentikasi.

  • Gunakan API permintaan untuk menguji pengambilan informasi, termasuk informasi template yang mengikat, untuk memastikan bahwa seseorang yang memperolehnya dapat berhasil menggunakannya untuk berinteraksi dengan layanan Anda.

  • Isi informasi tModel seandainya seseorang ingin mencari layanan tertentu dan menemukan bisnis Anda sebagai salah satu penyedia layanan.

  • Perbarui informasi yang diperlukan untuk mencerminkan informasi kontak bisnis yang berubah dan detail layanan baru, dapatkan dan lepaskan token otentikasi baru dari operator setiap saat. Kapan pun Anda perlu memperbarui atau mengubah data yang telah Anda daftarkan, Anda harus kembali ke operator yang Anda gunakan untuk memasukkan data.

Contoh berikut akan menunjukkan bagaimana Perusahaan XYZ akan mendaftarkan informasinya dan bagaimana distributor yang tertarik untuk membawa lini produk XYZ dapat menemukan informasi tentang cara menghubungi perusahaan dan melakukan pemesanan, menggunakan layanan Web XYZ.com.

Membuat Registry

Setelah mendapatkan token otentikasi dari salah satu operator Microsoft, misalnya pengembang XYZ.com memutuskan informasi apa yang akan dipublikasikan ke registri dan menggunakan salah satu alat UDDI yang disediakan oleh Microsoft. Jika perlu, pengembang juga dapat menulis program Java, C #, atau VB.NET untuk menghasilkan pesan SOAP yang sesuai. Berikut ini contohnya.

POST /save_business HTTP/1.1
Host: www.XYZ.com
Content-Type: text/xml; charset = "utf-8"
Content-Length: nnnn
SOAPAction: "save_business"

<?xml version = "1.0" encoding = "UTF-8" ?>
<Envelope xmlns = "http://schemas/xmlsoap.org/soap/envelope/">
   <Body>
      <save_business generic = "2.0" xmlns = "urn:uddi-org:api_v2">
         <businessKey = "">
         </businessKey>
         
         <name>
            XYZ, Pvt Ltd.
         </name>
         
         <description>
            Company is involved in giving Stat-of-the-art....
         </description>
         
         <identifierBag> ... </identifierBag>
         ...
      </save_business>
   </Body>
</Envelope>

Contoh ini menggambarkan pesan SOAP yang meminta untuk mendaftarkan entitas bisnis UDDI untuk Perusahaan XYZ. Elemen kunci kosong, karena operator secara otomatis membuat kunci UUID untuk struktur data. Sebagian besar bidang dihilangkan demi menunjukkan contoh sederhana.

Perusahaan XYZ selalu dapat menjalankan operasi save_business lain untuk ditambahkan ke informasi dasar yang diperlukan untuk membuat entitas bisnis.

Mengambil Informasi

Setelah Perusahaan XYZ memperbarui entri UDDI-nya dengan informasi yang relevan, perusahaan yang ingin menjadi distributor XYZ dapat mencari informasi kontak di registri UDDI dan mendapatkan deskripsi layanan dan titik akses untuk dua layanan Web yang diterbitkan XYZ.com secara online entri pesanan: pesanan massal pramusim dan pesanan penyetokan ulang dalam musim.

Contoh ini menggambarkan contoh permintaan SOAP untuk mendapatkan informasi detail bisnis tentang Perusahaan XYZ. Setelah Anda mengetahui UUID, atau kunci, untuk bisnis tertentu yang telah terdaftar, Anda dapat menggunakannya di get_businessDetail API untuk mengembalikan informasi spesifik tentang bisnis tersebut.

POST /get_businessDetail HTTP/1.1
Host: www.XYZ.com
Content-Type: text/xml; charset = "utf-8"
Content-Length: nnnn
SOAPAction: "get_businessDetail"

<?xml version = "1.0" encoding = "UTF-8" ?>
<Envelope xmlns = "http://schemas/xmlsoap.org/soap/envelope/">
   <Body>
      <get_businessDetail generic = "2.0" xmlns = "urn:uddi-org:api_v2">
         <businessKey = "C90D731D-772HSH-4130-9DE3-5303371170C2">
         </businessKey>
      </get_businessDetail>
   </Body>
</Envelope>

Model data UDDI mendefinisikan struktur umum untuk menyimpan informasi tentang bisnis dan layanan web yang diterbitkannya. Model data UDDI dapat dikembangkan sepenuhnya, termasuk beberapa struktur urutan informasi yang berulang.

Namun, WSDL digunakan untuk mendeskripsikan antarmuka layanan web. WSDL cukup mudah digunakan dengan UDDI.

  • WSDL direpresentasikan di UDDI menggunakan kombinasi informasi businessService, bindingTemplate, dan tModel .

  • Seperti halnya layanan yang terdaftar di UDDI, informasi umum tentang layanan disimpan dalam businessService struktur data, dan informasi khusus untuk bagaimana dan di mana layanan diakses disimpan dalam satu atau lebih terkait bindingTemplate struktur. Setiap struktur bindingTemplate menyertakan elemen yang berisi alamat jaringan layanan dan terkait dengannya satu atau beberapa struktur tModel yang mendeskripsikan dan mengidentifikasi layanan secara unik.

  • Ketika UDDI digunakan untuk menyimpan informasi WSDL, atau penunjuk ke file WSDL, tModel harus dirujuk oleh konvensi sebagai tipe wsdlSpec , yang berarti bahwa elemen overviewDoc secara jelas diidentifikasi sebagai menunjuk ke definisi antarmuka layanan WSDL.

  • Untuk UDDI, konten WSDL dibagi menjadi dua elemen utama file antarmuka dan file implementasi.

Layanan web sistem reservasi Hertz memberikan contoh konkret tentang bagaimana UDDI dan WSDL bekerja sama. Berikut adalah <tModel> untuk layanan web ini -

<tModel authorizedName = "..." operator = "..." tModelKey = "...">
   <name>HertzReserveService</name>
   <description xml:lang = "en">
      WSDL description of the Hertz reservation service interface
   </description>
	
   <overviewDoc>
      <description xml:lang = "en">
         WSDL source document.
      </description>
      <overviewURL>
         http://mach3.ebphost.net/wsdl/hertz_reserve.wsdl
      </overviewURL>
   </overviewDoc>
   
   <categoryBag>
      <keyedReference tModelKey = "uuid:C1ACF26D-9672-4404-9D70-39B756E62AB4"
         keyName = "uddi-org:types" keyValue = "wsdlSpec"/>
   </categoryBag>	
</tModel>

Poin utamanya adalah -

  • Elemen overviewURL memberikan URL ke tempat file WSDL definisi antarmuka layanan dapat ditemukan. Hal ini memungkinkan manusia dan alat sadar UDDI / WSDL untuk menemukan definisi antarmuka layanan.

  • Tujuan dari elemen keyedReference di categoryBag adalah untuk memastikan bahwa tModel ini dikategorikan sebagai dokumen spesifikasi WSDL.

Sejumlah implementasi UDDI saat ini tersedia. Penerapan ini mempermudah pencarian atau publikasi data UDDI, tanpa terperosok dalam kerumitan API UDDI. Berikut adalah sinopsis singkat dari implementasi UDDI utama yang tersedia.

Implementasi Java

Ada dua implementasi UDDI untuk Java.

  • UDDI4J (UDDI untuk Java) - UDDI4J awalnya dibuat oleh IBM. Pada bulan Januari 2001, IBM menyerahkan kode tersebut ke situs open source miliknya. UDDI4J adalah perpustakaan kelas Java yang menyediakan API untuk berinteraksi dengan UDDI.

  • jUDDI - jUDDI adalah implementasi Java open source dari registry UDDI dan toolkit untuk mengakses layanan UDDI.

Implementasi Perl

  • UDDI::Lite - Ini menyediakan klien UDDI dasar untuk penyelidikan dan penerbitan.

Implementasi Ruby

  • UDDI4r - Ini menyediakan klien UDDI dasar untuk penyelidikan dan penerbitan.

Implementasi Python

  • UDDI4Py - UDDI4Py adalah paket Python yang memungkinkan pengiriman permintaan ke, dan pemrosesan respons dari UDDI Versi 2 API.

Proyek UDDI juga mendefinisikan sekumpulan definisi XML Schema yang menjelaskan format data yang digunakan oleh berbagai spesifikasi API. Semua dokumen ini tersedia untuk diunduh di www.uddi.org . Versi saat ini dari semua grup spesifikasi adalah Versi 2.0.

Spesifikasinya meliputi:

  • Replikasi UDDI,
  • Operator UDDI,
  • API Programmer UDDI, dan
  • Struktur Data UDDI

Replikasi UDDI

Dokumen ini menjelaskan proses replikasi data dan antarmuka yang harus dipatuhi oleh operator registri untuk mencapai replikasi data antar situs. Spesifikasi ini bukan API programmer; itu mendefinisikan mekanisme replikasi yang digunakan di antara node UBR.

Operator UDDI

Dokumen ini menguraikan perilaku dan parameter operasional yang diperlukan oleh operator node UDDI. Spesifikasi ini mendefinisikan persyaratan manajemen data yang harus dipatuhi oleh operator.

API Programmer UDDI

Spesifikasi ini menetapkan sekumpulan fungsi yang didukung oleh semua registri UDDI untuk menanyakan tentang layanan yang dihosting di registri dan untuk menerbitkan informasi tentang bisnis atau layanan ke registri. Spesifikasi ini mendefinisikan serangkaian pesan SOAP yang berisi dokumen XML yang diterima, diurai, dan ditanggapi oleh registri UDDI. Spesifikasi ini, bersama dengan skema API XML UDDI dan spesifikasi Struktur Data UDDI, membuat antarmuka pemrograman lengkap ke registri UDDI.

Struktur Data UDDI

Spesifikasi ini mencakup spesifikasi struktur XML yang terkandung dalam pesan SOAP yang ditentukan oleh API Programmer UDDI. Spesifikasi ini mendefinisikan lima struktur data inti dan hubungannya satu sama lain.

Skema API XML UDDI tidak terdapat dalam spesifikasi; melainkan disimpan sebagai dokumen XML Schema yang mendefinisikan struktur dan tipe data dari struktur data UDDI.

UDDI dan elemennya dalam tutorial ini dan juga telah melihat arsitektur lengkap dan model data UDDI.

Kami telah mempelajari tentang dua antarmuka UDDI: Antarmuka Penerbit dan Antarmuka Permintaan. Kami juga telah mempelajari cara mendaftar dan mencari layanan web dengan UDDI.

Apa berikutnya?

Langkah selanjutnya adalah mempelajari SOAP, WSDL, dan Layanan Web.

SABUN MANDI

SOAP adalah protokol berbasis XML sederhana yang memungkinkan aplikasi untuk bertukar informasi melalui HTTP.

Jika Anda ingin mempelajari lebih lanjut tentang SOAP, silakan kunjungi tutorial SOAP kami .

WSDL

WSDL adalah format standar untuk mendeskripsikan layanan web dalam format XML.

WSDL merupakan bagian integral dari UDDI.

Jika Anda ingin mempelajari lebih lanjut tentang WSDL, silakan kunjungi Tutorial WSDL kami .

Layanan web

Layanan web dapat mengubah aplikasi Anda menjadi aplikasi web.

Jika Anda ingin mempelajari lebih lanjut tentang layanan web, silakan kunjungi tutorial Layanan Web kami .

Berikut adalah referensi lengkap UDDI Enquiry API dan UDDI Publishing API.

API Permintaan UDDI

Nama API Deskripsi V1.0 V2.0
find_binding Mencari template binding yang terkait dengan layanan tertentu. Y Y
find_business Mencari bisnis yang sesuai dengan kriteria yang ditentukan. Y Y
find_relatedBusinesses Menemukan bisnis yang telah terkait melalui model hubungan uddi-org:. Y
find_service Mencari layanan yang terkait dengan bisnis tertentu. Y Y
find_tModel Mencari rekaman tModel yang cocok dengan kriteria yang ditentukan. Y Y
get_bindingDetail Mengambil bindingTemplate lengkap untuk setiap bindingKey yang ditentukan. Y Y
get_businessDetail Mengambil businessEntity lengkap untuk setiap businessKey yang ditentukan. Y Y
get_businessDetailExt Mengambil perpanjangan businessEntity untuk setiap businessKey yang ditentukan. Y Y
get_serviceDetail Mengambil data businessService untuk setiap serviceKey yang ditentukan. Y Y
get_tModelDetail Mengambil rekaman tModel untuk setiap tModelKey yang ditentukan. Y Y

API Penerbitan UDDI

Nama API Deskripsi V1.0 V2.0
get_authToken Mengambil token otorisasi. Semua operasi antarmuka Penerbit mengharuskan token otorisasi yang valid dikirimkan bersama permintaan. Y Y
discard_authToken Memberi tahu registri UDDI untuk tidak lagi menerima token otorisasi yang diberikan. Langkah ini sama dengan keluar dari sistem. Y Y
save_business Membuat atau memperbarui informasi entitas bisnis yang terdapat di registri UDDI. Y Y
save_service Membuat atau memperbarui informasi tentang layanan web yang disediakan oleh entitas bisnis. Y Y
save_binding Membuat atau memperbarui informasi teknis tentang implementasi layanan web. Y Y
save_tModel Membuat atau memperbarui pendaftaran konsep abstrak yang dikelola oleh registri UDDI. Y Y
delete_business Menghapus badan usaha yang diberikan dari registri UDDI sepenuhnya. Y Y
delete_service Menghapus layanan web yang diberikan dari registri UDDI sepenuhnya. Y Y
delete_binding Menghapus detail teknis layanan web yang diberikan dari registri UDDI. Y Y
delete_tModel Menghapus tModels tertentu dari registri UDDI. Y Y
get_registeredInfo Menampilkan ringkasan dari semua registri UDDI saat ini melacak untuk pengguna, termasuk semua bisnis, semua layanan, dan semua tModels. Y Y
set_publisherAssertions Mengelola semua pernyataan hubungan terlacak yang terkait dengan akun penerbit individu. Y
add_publisherAssertions Menyebabkan satu atau beberapa publisherAssertions ditambahkan ke koleksi pernyataan penerbit individu. Y
delete_publisherAssertions Menyebabkan satu atau beberapa elemen publisherAssertion dihapus dari koleksi pernyataan penerbit. Y
get_assertionStatusReport Memberikan dukungan administratif untuk menentukan status pernyataan penerbit saat ini dan yang beredar yang melibatkan salah satu pendaftaran bisnis yang dikelola oleh akun penerbit individu. Y
get_publisherAssertions Memperoleh kumpulan lengkap pernyataan penerbit yang terkait dengan akun penerbit individu. Y

Referensi Kode Kesalahan

Referensi lengkap kode kesalahan yang dikembalikan oleh UDDI API seperti yang diberikan -

Kode Kesalahan