JAX-WS实现WebService
发布时间:2020-12-16 23:43:16 所属栏目:安全 来源:网络整理
导读:开发环境 JDK1.7 案例一 有缺陷 服务端代码 代码总览 IMyService.java package com.itlwc;import javax.jws.WebService;@WebServicepublic interface IMyService {public int add(int a,int b);} MyServiceImpl.java package com.itlwc;import javax.jws.Web
开发环境JDK1.7 案例一 有缺陷服务端代码代码总览 IMyService.java package com.itlwc; import javax.jws.WebService; @WebService public interface IMyService { public int add(int a,int b); } MyServiceImpl.java package com.itlwc; import javax.jws.WebService; @WebService(endpointInterface = "com.itlwc.IMyService") public class MyServiceImpl implements IMyService { @Override public int add(int a,int b) { return a + b; } } MyServiceRun.java package com.itlwc; import javax.xml.ws.Endpoint; public class MyServiceRun { public static void main(String[] args) { String address = "http://localhost:8888/MyService"; Endpoint.publish(address,new MyServiceImpl()); } } http://localhost:8888/MyService?wsdl 客户端代码代码总览 IMyService和服务端的代码一样 MyClientRun.java package com.itlwc; import java.net.MalformedURLException; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.ws.Service; public class MyClientRun { public static void main(String[] args) { try { //创建访问wsdl服务地址url URL url = new URL("http://localhost:8888/MyService?wsdl"); //通过QName指明服务具体信息targetNamespace和name QName qn = new QName("http://itlwc.com/","MyServiceImplService"); //创建服务 Service service = Service.create(url,qn); //实现接口 IMyService is = service.getPort(IMyService.class); System.out.println(is.add(5,6)); //以上服务有问题,依赖了IStudent接口 } catch (MalformedURLException e) { e.printStackTrace(); } } } 案例二服务端代码和案例一的服务端代码是一样的客户端代码使用JDK自带命令wsimport命令根据已有的wsdl自动生成客户端代码 第一步:在D盘新建文件webservice 第二步:命令行执行wsimport命令 C:Documents and SettingsAdministrator>d: D:&;wsimport -d d:/webservice/ -keep -verbose http://localhost:8888/MyService?wsdl 说明: -d指明我们要生成的目录 -keep生成class文件和java文件 -verbose查看生成的详细信息 第三步:把D盘webservice目录下的文件全拷贝到客户端代码中 代码总览(除了MyClientRun.java其他java文件是自动生成的) MyClientRun.java package com.itlwc; public class MyClientRun { public static void main(String[] args) { MyServiceImplService msis = new MyServiceImplService(); IMyService is = msis.getMyServiceImplPort(); System.out.println(is.add(5,6)); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |