由于实习的需要,学习了一下webservice的使用,这里做一个记录。
开发环境:myeclipse ,jdk1.6.45(使用的版本号要大于22的)
1创建服务端
创建一个web service project ,我这里的项目名字叫做adfs.
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;
import javax.xml.ws.Endpoint;
@WebService
@SOAPBinding(style=Style.RPC)
public class Demo {
public String toe(String namString){
return "特别的"+namString;
}
public static void main(String[] args) {
Endpoint.publish("http://localhost:9900/web/te", new Demo());
System.out.println("编译成功");
}
}
然后运行一下这个类,如果显示编译成功那就没有问题,如果报错的话,可能就是没有导入jar包-jaxb-api-2.1.jar和jaxws-api-2.1-1.jar。
测试:
在浏览器上输入http://localhost:9900/web/te?wsdl,能看到这个页面就显示正确的。
2生成客户端的
1)也是新建一个webserviceproject项目。项目名:WebServiceClientDemo。
2)命令提示窗口执行生成命令。
格式:wsimport -s “src目录” -p “生成类所在包名” -keep “wsdl发布地址”
说明:
1.”src目录”地址不可含空格
2.“wsdl发布地址”不要漏了“?wsdl”
3)回到WebServiceClientDemo项目,刷新一下(F5).
4)编写测试方法,调用服务端方法,并打印返回的结果
public class ServiceTest {
public static void main(String[] args) {
Demo demoPort = new DemoService().getDemoPort();
String toe = demoPort.toe("这是");
System.out.println(toe);
}
}
显示的结果:特别的这是