服務端:
一、file–>new–>project
二、點擊next后輸入服務端名,點擊finish,生成目錄如下
三、在 HelloWorld.Java 文件中右擊,選 WebServices ,再選 Generate Wsdl From Java Code ,確定
點擊ok會自動給我們生成HelloWorld.wsdl,畫紅線處注意
四、配置tomcat,此處不多說,主要是配置好tomcat后還需要加入 Axis 的庫
點擊右下角fix即可,重新啟動 tomcat ,在瀏覽器中輸入:http://localhost:8080/services ,出現如下信息,代表部署成功。
點擊HelloWorld (wsdl)可看到相應的信息
至此,服務器端的Web Service就創建好了,下面我將繼續講解如何創建客戶端的Web Service!
0|1創建客戶端:
一、file–>new–>project
輸入客戶端項目名,finish即可,項目創建成功會自動跳出如下界面,手動可以右鍵項目–>webService–>Generate Java Code From Wsdl 即可
然后點擊你的項目名稱郵件 選擇如下
點擊ok,idea會幫我們生成好相對應的代碼,測試類如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
package
example;
import
com.HelloWorldServiceLocator;
import
com.sun.corba.se.spi.activation.Activator;
public
class
HelloWorldClient {
public
static
void
main(String[] argv) {
try
{
HelloWorldServiceLocator locator =
new
HelloWorldServiceLocator();
Activator service = locator.get();
// If authorization is required
//((HelloWorldSoapBindingStub)service).setUsername("user3");
//((HelloWorldSoapBindingStub)service).setPassword("pass3");
// invoke business method
service.businessMethod();
}
catch
(javax.xml.rpc.ServiceException ex) {
ex.printStackTrace();
}
catch
(java.rmi.RemoteException ex) {
ex.printStackTrace();
}
}
}
|
此時會有報錯,HelloWorldServiceLocator類是由於沒有導包按alt+enter導包即可,下面在進行一些代碼修改
1
2
|
Activator service = locator.get();
service.businessMethod();
|
改成
1
2
|
String str = service.sayHelloWorldFrom(
"sushan"
);
System.out.println(str);
|
此時運行客戶端main方法還會報錯,報錯的原因是沒有junit的jar包,我的做法是加入maven
此時運行客戶端main方法還會報錯,報錯的原因是沒有junit的jar包,我的做法是加入maven
具體步驟:
1.現在項目新建一個pom.xml(最好從已有的maven項目中粘貼過來)
2.關閉項目 刪除最近打開歷史 重新打開這個項目
3.顯示是否變味maven項目 點擊 是
然后在pom中加入依賴
1
2
3
4
5
|
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>
4.12
</version>
</dependency>
|