開發 UDDI 客戶端常用 IBM UDDI4J,但 BEA WebLogic 內建 WebLogic UDDI Client API (包含於 weblogic.jar),結構完全遵循 UDDI 架構,學習此 API 有助深入理解 UDDI 體系。
UDDI 操作分查詢與發布(刪除)。WebLogic 定義:
Inquiry 類:查詢操作,位於 weblogic.uddi.client.service。Publish 類:發布操作,同包。UDDIService,含 URL 屬性存放查詢/發布端點,透過 setURL() 設定。查詢目標四類:BusinessEntity、BusinessService、BindingTemplate、tModel。Inquiry 提供四個 find 方法對應,另有 get 方法取得詳細資訊。流程:先 find 取得基本資訊與 Key,再 get 取得完整物件。
void echoBusiness(String parm) {
try {
FindBusiness fb = new FindBusiness();
fb.setName(new Name(parm)); // 查詢條件
Vector vBusinessInfo = finder.findBusiness(fb).getBusinessInfos().getBusinessInfoVector();
for (int i=0; i
BusinessInfo 含 Name、BusinessKey;BusinessEntity 含 Contact、Operator、DiscoveryURL、Description、Category、Identifier 等詳細資訊。
BusinessInfo.getServiceInfos() 取得 ServiceInfo (Name、ServiceKey)。getServiceDetail() 取得 BusinessService (Description、Category 等)。BusinessService.getBindingTemplates() 取得綁定模板 (BindingTemplate 含 AccessPoint 等)。BindingTemplate.getTModelInstanceDetails() 取得 InstanceDetails (含 OverviewDoc)。OverviewDoc 可得 OverviewURL,即發布 Web Service 時的 WSDL URL。文中另附完整代碼演示此查詢鏈路 (原文未完)。