本文主要是介绍spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前提条件:java –spring框架,注解(能够扫描@webService标签)
1. 经过一天的煎熬和挣扎,终于把webservice的其中非常简单的配置方法给弄明白了,就是JAX-WS配置webservice,真的非常简单,只是细节一一旦出了点问题,全盘皆输,为了不再出现问题,我将一点一点的记录下来,以便以后有迹可循(因为自己脑子不好使哈哈)。
a) 服务端:
i. 创建一个接口作为我们的服务接口,在接口上加上@webservice,然后写几个方法(就是我们想要调用的方法),如图
ii. 创建一个类来实现我们的服务接口,作为服务类,同样类名上要加@webservice(endpointInterface="com.yuyang.webservice.FightingWS",serviceName="FightService",targetNamespace="http://com.yuyang.fight"),不过这个要多几个配置。第一个:endpointInterface,指向你的服务接口,这个要写,会在发布webservice用到;第二个:servicename,这个我认为写不写都行,就是个标志,不过这个会影响你自动的那个类的名字,不重要;第三个:targetNamespace,这个也不是很重要,但是要有,就是个namespace.
iii. 服务端还差一点就是配置文件,我们用的是spring来托管(如果不用spring可以在main函数中使用Endpoint.pulish()这个方法进行发布)。只需要在配置文件中加一个代理bean即可,这个bean在spring中,baseAddress是必须加的属性,这个使我们的服务接口访问地址。端口号不要与当前项目相同,会冲突。还有其他的几个属性并不重要,选填就行。
iv. 这样我们服务端配置完毕,通过浏览器访问http://localhost:8081/FightingWS?wsdl如果是这样的页面,表示我们的服务端已经配好了。
b) 客户端
i. 我们使用的是myeclipse10,myeclipse已经有配置客户端的插件了,所有就是下一步下一步的操作。如图,首先在客户端程序中创建一个webservice client
选择项目
Wsdl URl就是我们服务端配置的baseAddress多个参数,固定格式
下一步,如下图这样就是正常的,如果出现黄色警告,或者报错那就是服务端没有配好,会导致wsdl读取错误,调用时会出现问题。
会生成这么几个类和接口,其中FightSerivce就是根据我们服务端的servicename 对应生成的名字,我们要用的就是这个类。
随便找个action、controller或者main方法中使用下面的代码就可以调用我们服务端webservice的服务了
FightService fs=newFightService();
boolean flag=fs.getFightingWSImplPort().fight("", "");
System.out.println(flag);
这篇关于spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!