• juddi实验过程


      本篇文章的内容主要有两个部分:简要介绍一下juddi以及围绕介绍使用juddi进行服务相关实验的详细步骤。

    一、juddi简介

      juddi是uddi的java实现(关于uddi的具体内容可以参考这篇文章:)。相当于是基于uddi标准开发的一套API,开发者可以使用这套API进行web服务的创建、查询等操作。
      juddi本身具有以下特点:
      a)开源(源码见:apache/juddi: Mirror of Apache jUDDI (github.com))
      b)跨平台(unix, windows等主流平台)
      c)与任何支持ANSI标准SQL的关系数据库(MySQL、Oracle、DB2、Sybase、Derby等)一起使用
      d)可部署在任何支持Servlet2.3规范的Java应用程序服务器上,包括:Jakarta Tomcat、JOnAS、WebSphere、WebLogic、Borland Enterprise Server、JRun等

    二、juddi服务相关实验

      关于实验相关的介绍,主要是使用juddi进行简单服务创建、服务发布、服务查询的整体流程。内容主要分为三个部分:
      1.环境配置
      2.使用UI界面进行服务相关操作
      3.使用命令接口进行服务相关操作

    1.环境配置:

      关于环境配置,本次实验的环境如下:windows10+jdk1.8+juddi3.3.4+tomcat7.0.64+maven3.0.4
      juddi3.3.4下载地址:http://archive.apache.org/dist/juddi/juddi/3.3.4/
      jdk1.8安装教程:2021最新Java JDK1.8的安装超详细教程_java_脚本之家 (jb51.net)
      maven安装教程:Windows下 maven3.0.4的安装步骤+maven配置本地仓库 - 爱码网 (likecs.com)
      因为后续还要使用接口访问,环境这里也用VS CODE配置下maven,可参考:https://zhuanlan.zhihu.com/p/486297269

      下面说一下相关环境变量的设置:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
      path下(主要是显示的那四个):
    在这里插入图片描述

      如果以上环境变量配置完成后,可以检测是否能够开启Juddi的服务端,方式如下,cmd中直接

    catalina  run
    
    • 1

    在这里插入图片描述
      然后在本地网页打开:www.localhost:8080
      ps:至于为什么是这个网址,因为juddi是基于tomcat,具体关于tomcat的可以看这篇:tomcat
      出现如下界面,代表环境基本配置成功:
    在这里插入图片描述

    2.使用UI界面进行服务相关操作

      进入juddi主页后,点击user interface:
    在这里插入图片描述
      进入页面后,登录默认账号(当然也可以自己创建),账号是uddi,密码是uddi
    在这里插入图片描述
      登录成功后就可以进行下面的一些操作:

      首先创建一个tmodel:
    在这里插入图片描述
      这个是建立企业的Keygenerator,在uddi和keygenerator的内容可以自己更改,然后点击save保存即可:
    在这里插入图片描述
      如果创建成功,如下图所示:
    在这里插入图片描述
      下面创建一个business实体:
    在这里插入图片描述
      在buiness实体创建,基于刚才的tmodel在其作用域下创建一个部分(本图是sale-unit),然后填写关于此buiness的基本信息:
    在这里插入图片描述
      下面为该business创建服务,点击create下service并找到刚刚创建的sale-unit,点击后面的add增加服务:
    在这里插入图片描述
      每一个服务需要对应的service key,回到tmodel的key-generator再新建一个:
    在这里插入图片描述
      然后创建服务:
    在这里插入图片描述
      服务创建成功后,可通过Discover下的Service进行查询,同理可查询Buiness
    在这里插入图片描述

    3.使用命令接口进行服务相关操作

      关于命令接口,因为juddi是基于java所以需要使用maven做管理,关于maven的介绍,可以看看这篇文章。本次内容是在VS CODE中配置的maven,具体配置流程可参考:Windows下 maven3.0.4的安装步骤+maven配置本地仓库 - 爱码网 (likecs.com)

      在juddi源码中源码中给了几个example,位置在:juddi/juddi-examples at master · apache/juddi (github.com)。本次实验只选取其中最简单的三个:
    在这里插入图片描述
      可以去下载下面这个源码(也最好能给个star,感谢~):https://github.com/Rvlis/juddiv3.3.4-configuration
      介绍一下三者的功能:
      create-partition建立一个business
      simple-publish,给business发布一个服务:
      simple-browse查询当前列表下所有服务
    (以下假设已经下载上述代码并成功配置了vs code下maven环境)

      1.打开juddi服务器:cmd 运行 catalina run(上面有过程,不再赘述)
      ps:先检测下mvn能不能正常启动,否则vs code中没法使用maven
    在这里插入图片描述
      找不到就重新设置下环境变量
      1)create-partition(以创建business为例)
      进入create-partition目录,执行:

    mvn -q -Pdemo test
    
    • 1

    在这里插入图片描述
      输入账号密码及要创建的相关内容:
    在这里插入图片描述
      显示如下成功:
    在这里插入图片描述
      2)simple-publish
      然后进行发布,进入simple-publish目录执行:

    mvn -q -Pdemo test
    
    • 1

      然后根据提示输入就行,特别需要注意的是business-key是之前创建的,service-key是和自己的服务有关
    在这里插入图片描述
      出现下面这个就成功了:
    在这里插入图片描述
      3)simple-browse
      下面进行查询,进入simple-browse目录,执行命令就能看到该用户的所有内容,我在此把日志输出。命令是:

    mvn -q -Pdemo test
    
    • 1
    PS D:\Desktop\juddiv3.3.4-configuration-main\examples\simple-browse> mvn -q -Pdemo test  
    
    -------------------------------------------------------
     T E S T S
    -------------------------------------------------------
    There are no tests to run.
    
    Results :
    
    Tests run: 0, Failures: 0, Errors: 0, Skipped: 0       
    
    十月 24, 2022 11:25:40 下午 org.apache.juddi.v3.client.config.UDDIClient <init>
    信息: jUDDI Client version - 3.3.4
    十月 24, 2022 11:25:40 下午 org.apache.juddi.v3.client.config.ClientConfig loadConfiguration
    信息: Reading UDDI Client properties file file:///D:/Desktop/juddiv3.3.4-configuration-main/examples/simple-browse/target/classes/META-INF/simple-browse-uddi.xml use -Duddi.client.xml to override
    十月 24, 2022 11:25:42 下午 org.apache.juddi.v3.client.transport.JAXWSTransport getUDDISecurityService
    警告: You should consider use a secure protocol (https) when sending your password!
    Please enter your name:
    uddi
    Please enter your password:
    uddi
    =================================================================================
    Business Key: uddi:juddi.apache.org:node1
    Name: An Apache jUDDI Node
    Description: This is a UDDI registry node as implemented by Apache jUDDI.
    Services:
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-custodytransfer
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Custody and Ownership Transfer Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-inquiry-rest
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Inquiry REST Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-inquiry
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Inquiry Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-publish
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Publish Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:replication
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Replication API Version 3
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-security
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Security Service 
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-subscriptionlistener
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Subscription Listener Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-subscription
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Subscription Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-valueset
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Value Set API Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-valueset-cache
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDI Value Set Caching API Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-inquiryv2
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDIv2 Inquiry Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-publishv2
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: UDDIv2 Publish Service
    ------------------------------------------------------------------------
    Service Key: uddi:juddi.apache.org:services-publisher
    Owning Business Key: uddi:juddi.apache.org:node1
    Name: jUDDI Publisher Service
    =================================================================================
    Business Key: uddi:www.huawei.com:new-unit
    Name: new-unit
    Description: 新部门
    Services:
    ------------------------------------------------------------------------
    Service Key: uddi:www.huawei.com:new-unit:new-service
    Owning Business Key: uddi:www.huawei.com:new-unit
    Name: service
    =================================================================================
    Business Key: uddi:www.huawei.com:sale-unit
    Name: sale-unit
    Description: 销售单位
    Services:
    ------------------------------------------------------------------------
    Service Key: uddi:www.huawei.com:sale-unit:advertisement
    Owning Business Key: uddi:www.huawei.com:sale-unit
    Name: ad
    ------------------------------------------------------------------------
    Service Key: uddi:www.huawei.com:sale-unit:people
    Owning Business Key: uddi:www.huawei.com:sale-unit
    Name: people service
    =================================================================================
    Business Key: uddi:www.huawei.com:tec-unit
    Name: tec-unit
    Description: 技术单位
    Services:
    ------------------------------------------------------------------------
    Service Key: uddi:www.huawei.com:tec-unit:development
    Owning Business Key: uddi:www.huawei.com:tec-unit
    Name: develop
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109

      从上面的日志可以看出,之前创建的服务的相关信息都在上面了

    参考资料:https://www.cnblogs.com/for-dream-tgt/category/976816.html

  • 相关阅读:
    vue3 导出excl文件
    分布式锁的实现(一)Redis篇
    vue引入sm-crypto通过sm4对文件进行加解密,用户输入密码
    markdown希腊字母
    Swing基本组件的用法(一)
    鸿蒙HarmonyO实战-ArkUI动画(组件内转场动画)
    Protocol Buffer的package和go_package说明
    java计算机毕业设计springboot+vue在线选课系统
    计算机视觉学习记录(六):深度学习基础
    nvm管理多个版本的nodejs
  • 原文地址:https://blog.csdn.net/gls_nuaa/article/details/127724385