主要說說JAVA如何調用WCF服務。
Java環境下生成代理類的工具有很多,如wsdl2Java,wsimport 等。本文中使用的工具是wsimport。
wsdl2Java 生成命令實例:
wsdl2Java -p packageName -d C:\ProxyClass http://127.0.0.1/WcfService/TestService.svc?wsdl
命令說明:
-p:生成文件的包名稱
-d: 生成路徑
后面就是wsdl的地址,如果用服務地址(不帶?wsdl)貌似不行
Java環境下的都是包結構,和C#不一樣。
本文使用wsimport生成代理調用了WCF服務。
調用步驟:
1、在Java工程所在的文件夾中建立文件夾,以放置生成的Java文件。如下圖:
2、針對不同的服務生成代理,以放在不同的文件夾中:如生成LoginService.svc的命令如下:
注意以上紅色標識部分:為存放的文件夾名稱。運行以上命令后生成的文件如下:
重復1、2 生成其他服務的代理。主要修改的就是存放路徑與服務地址。
3、在工程的src中右鍵添加包(注意:這里的包名稱需通命令中指定的包名次相同),如下圖:
4、將生成的文件復制到包中
5、調用:
public static void main(String[] args) { // TODO Auto-generated method stub LoginService loginService=new LoginService(); ILogin loginProxy= loginService.getBasicHttpBindingILogin(); String token= loginProxy.login("admin","123456"); System.out.println(token); }
運行結果: