客户端client
public class Client {
public static void main(String[] args) {
HelloWorldService service = new HelloWorldService();
HelloWorld helloWorld = service.getHelloWorldPort();
System.out.println(helloWorld.say("001"));
User user = new User();
user.setUsername("java");
user.setPassword("123456");
List<Role> list= helloWorld.getRoleByUser(user);
for(Role role :list){
System.out.println(role.getId()+" "+role.getRolename());
}
}
}
服务器端
@WebService
public interface HelloWorld {
public String say(String str);
public List<Role> getRoleByUser(User user);
}
@WebService
public class HelloWorldImpl implements HelloWorld {
public String say(String str) {
return "你好!"+str;
}
public List<Role> getRoleByUser(User user) {
List<Role> roleList=new ArrayList<Role>();
// 模拟 直接写死
if(user!=null){
if(user.getUsername().equals("java") && user.getPassword().equals("123456")){
roleList.add(new Role(1,"技术总监"));
roleList.add(new Role(2,"架构师"));
}else if(user.getUsername().equals("jack") && user.getPassword().equals("123456")){
roleList.add(new Role(3,"程序员"));
}
return roleList;
}else{
return null;
}
}
}
发布暴露地址
public class Server {
public static void main(String[] args) {
System.out.println("web service 启动...");
String address = "http://192.168.1.102/helloworld";
//Endpoint.publish(address, new HelloWorldImpl()); // jdk实现 暴露webservice接口
JaxWsServerFactoryBean factoryBean=new JaxWsServerFactoryBean();
factoryBean.setAddress(address); // 设置暴露地址
factoryBean.setServiceClass(HelloWorld.class); // 接口类
factoryBean.setServiceBean(new HelloWorldImpl()); // 设置实现类
factoryBean.create(); // 创建webservice接口
System.out.println("web service started");
// http://192.168.1.102/helloworld?wsdl
}
}