WebService系列之Idea 创建Webservice server 和 WebService Client

WebService 作为一项流行的通信技术,被大多数应用所采用。本文将从Idea 创建WebService 的Server 和Client 开始介绍,后续将会详细介绍WebService的一系列配置,达到由浅入深的效果。

一、创建WebService Server

1、打开Idea,选择“create a new project”:

WebService系列之Idea 创建Webservice server 和 WebService Client_第1张图片

2、点击左边菜单栏“java”,选择右边“Web Application”,找到"WebServices”并选中

WebService系列之Idea 创建Webservice server 和 WebService Client_第2张图片

 此时注意下方“Version” ,我们选择使用“Apache Axis”(为什么要选择这个?)

3、填写本地创建的项目文件夹以及项目名称

WebService系列之Idea 创建Webservice server 和 WebService Client_第3张图片

 点击“finish”,即 WebService的“Server”创建成功。

 创建完成后,界面显示如下:

WebService系列之Idea 创建Webservice server 和 WebService Client_第4张图片

可以看到这是一个Web项目,自动生成了HelloWorld.java文件,里面包含一个方法,接收一个参数,并返回"Hello, world, from "+输入的信息,并且生成了Server 的配置文件“server-config.wsdd”。

4、生成服务访问方式以及发布提供各种方法

打开“HelloWorld.java”,右击鼠标,选择“WebServices”,选择“Generate Wsdl From Java Code”。

    WebService系列之Idea 创建Webservice server 和 WebService Client_第5张图片

出现如下界面,这就是将要发布的服务以及方法的定义,例如端口为9000.

WebService系列之Idea 创建Webservice server 和 WebService Client_第6张图片

点击"OK",生成“HelloWorld.wsdl”文件,里面定义了我们要发布的方法的输入输出规则等信息。(具体的xml文件的介绍请关注后续文章介绍)

WebService系列之Idea 创建Webservice server 和 WebService Client_第7张图片

5、打包项目

        至此,我们的WebService服务已经生成,因为这是一个Web项目,因此需要使用Tomcat 进行发布。请注意,发布之前,需要将使用的jar 包打包进去。选中项目,右击,选择“Open Module Settings”.

WebService系列之Idea 创建Webservice server 和 WebService Client_第8张图片

        看到左边“Problems”标记为“1”,说明有一些需要处理的问题,点击可看到如下界面,意思是有jar 包没被打包进发布文件,点击Fix,完成修复。

WebService系列之Idea 创建Webservice server 和 WebService Client_第9张图片

6、发布web项目

以下流程为正常的Web项目发布过程,看截图,具体不做过多介绍,需要注意的是端口号改成我们之前发布Server时一样的端口,此处是9090

WebService系列之Idea 创建Webservice server 和 WebService Client_第10张图片

WebService系列之Idea 创建Webservice server 和 WebService Client_第11张图片

7、运行项目,校验结果

        在浏览器中输入 http://localhost:9000/services,出现如下画面

    WebService系列之Idea 创建Webservice server 和 WebService Client_第12张图片

    说明发布成功,已经有了所有的该webservice 的信息。

    点击HelloWorld后面的超链接,效果如下:

WebService系列之Idea 创建Webservice server 和 WebService Client_第13张图片

    至此,server端创建并发布运行成功。

二、创建WebService Client

1、创建客户端项目

WebService系列之Idea 创建Webservice server 和 WebService Client_第14张图片

        注意“Version”的选择和Server相同。

WebService系列之Idea 创建Webservice server 和 WebService Client_第15张图片

        点击“Finish”完成创建。

2、客户端配置Server连接信息

        创建完成,自动弹出如下界面,需要填写Server的信息

WebService系列之Idea 创建Webservice server 和 WebService Client_第16张图片

        第一个输入框,点击后面的选择按钮,选择我们之前创建Server的wsdl文件即可,自动会从wsdl文件中找到对应的访问url信息。

WebService系列之Idea 创建Webservice server 和 WebService Client_第17张图片

        因为我们之前创建server时,并未配置用户名和密码信息,因此此处我们用户名和密码不用输入。(用户名密码配置后续文章会介绍)

WebService系列之Idea 创建Webservice server 和 WebService Client_第18张图片

        “Package prefix ”需要填写的是自动创建的文件所在的包名,此处填写的“com.webservice”。点击“Ok”,完成创建客户端。

3、引入包并修改原方法

WebService系列之Idea 创建Webservice server 和 WebService Client_第19张图片

        从上图可以看出,创建完成后会报很多错误信息,不用紧张。首先按“Alt+Enter”组合键,引入相应的包,然后将其中的部分内容替换成我们当前server的调用,即将

Activator service = locator.get();
// If authorization is required
//((HelloWorldSoapBindingStub)service).setUsername("user3");
//((HelloWorldSoapBindingStub)service).setPassword("pass3");
// invoke business method
service.businessMethod();

        替换成

HelloWorld_PortType helloWorld_portType = locator.getHelloWorld();
String message = helloWorld_portType.sayHelloWorldFrom("client1");
System.out.println(message);

        至此,客户端配置完成。

4、运行客户端,访问Server

WebService系列之Idea 创建Webservice server 和 WebService Client_第20张图片

        因为这就是一个普通的java项目,通过main方法执行,因此直接右击选择Run“HelloWorldClient.main()”。

运行结果如下

WebService系列之Idea 创建Webservice server 和 WebService Client_第21张图片

可以看到,输出的信息是服务器返回的信息,客户端配置正确。


至此,一个完整的webservice 所包含的Server和Client配置完成,后续文章会介绍其各种配置以及安全问题,敬请关注。

你可能感兴趣的:(WebService系列之Idea 创建Webservice server 和 WebService Client)