创建服务端
一、file–>new–>project
二、点击next后输入服务端名,点击finish,生成目录如下
三、在 HelloWorld.Java 文件中右击,选 Tools 的WebServices ,再选 Generate Wsdl From Java Code ,确定
点击ok会自动给我们生成HelloWorld.wsdl,画红线处注意
四、配置tomcat,此处不多说,主要是配置好tomcat后还需要加入 Axis 的库
点击右下角fix即可,重新启动 tomcat ,在浏览器中输入:http://localhost:8888/services ,出现如下信息,代表部署成功。
点击HelloWorld (wsdl)可看到相应的信至此,服器端的Web Service就创建好了,下面我将继续讲解如何创建客户端的Web Service!
创建客户端:
一、file–>new–>project
输入客户端项目名,finish即可,项目创建成功会自动跳出如下界面,手动可以右键项目–>webService–>Generate Java Code From Wsdl 即可
这里的地址要改为:http://localhost:8888/myWebservice/services/HelloWorld?wsdl
然后点击你的项目名称邮件 选择如下,也可以点击Tools里面的Webservice
导入之前创建的服务端的wsdl文件即可,是咱们之前Service项目里的文件
点击ok,idea会帮我们生成好相对应的代码,测试类如下:
这是经过改动后的代码。
package example; import com.HelloWorldServiceLocator;
import com.HelloWorld_PortType; public class HelloWorldClient {
public static void main(String[] argv) {
try {
HelloWorldServiceLocator locator = new HelloWorldServiceLocator();
HelloWorld_PortType service=locator.getHelloWorld();
// If authorization is required
//((HelloWorldSoapBindingStub)service).setUsername("user3");
//((HelloWorldSoapBindingStub)service).setPassword("pass3");
// invoke business method
String str = service.sayHelloWorldFrom("xulifeng");
System.out.println(str);
} catch (javax.xml.rpc.ServiceException ex) {
ex.printStackTrace();
} catch (java.rmi.RemoteException ex) {
ex.printStackTrace();
}
}
}
运行后会发现没有导入jar包,进行导入
切记在运行时,将地址改为自己的网络地址:(这个点坑了我好久,第一次学也不太明白)改动后就成功了
运行截图: