Intellij Idea 下 生成WebServiceClient (WS客户端)
上一篇说到 服务端的配置 现在来说一下 客户端 客户端简单的多 只需要相关的jar包
原料
1.一个 可用的webService Server端 我这里是 :
http://localhost:8085/services/HelloWorldService?wsdl
这是在另一个服务端工程中的服务类 逻辑代码为 :
package example;
/**
* Created with IntelliJ IDEA.
* Author: DAX
* Date: 2016/12/10
* Time: 14:26
*/
public class HelloWorld {
public String sayHelloWorldFrom(String from) {
String result = "Hello, world, from " + from;
System.out.println(result);
return result;
}
}
2. Intellij Idea 2016 2.3
步骤如下:
1.新建个工程 如图: 选择Apache Axis idea 会自动现在所需要的 基础jar包
2.点击下一步 进入工程后 会有下面的 对话框 先说明下 框中参数的作用:
3.如果你很清楚 这些参数的作用 就直接设置 就行了 也可以关掉 从这里设置 想建在哪个包 自己就那个包点击右键如下选择
点击后 出现如下图所示 相关的参数 上面已经介绍过了
4.点击OK生成客户端 其中会有不少错误 下面的错误区域 需要自己改 IDE不是万能的:
如果 你生成了 TestCase 测试类 (上图倒数第二个类) 也是会报错的 因为你没有加入JUnit框架 IDEA的解决方法很简单 在类上增加一个@Test注解 然后用万能键 ALT+Enter 选择 JUnit4 加入 然后删除 @Test注解 就可以 进行单元测试了
我修改后的代码如下:
package cn.ws.client;
/**
* Created with IntelliJ IDEA.
* Author: DAX
* Date: 2016/12/10
* Time: 15:16
*/
public class App {
public static void main(String[] argv) {
try {
HelloWorldService_ServiceLocator locator = new HelloWorldService_ServiceLocator();
HelloWorld service= locator.getHelloWorldService();
System.out.println(service.sayHelloWorldFrom("hello WebServiceClient"));
} catch (javax.xml.rpc.ServiceException | java.rmi.RemoteException ex) {
ex.printStackTrace();
}
}
}
自己点击传参数测试就行了 运行结果如下: