spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!

前提条件:java –spring框架,注解(能够扫描@webService标签)

1.   经过一天的煎熬和挣扎,终于把webservice的其中非常简单的配置方法给弄明白了,就是JAX-WS配置webservice,真的非常简单,只是细节一一旦出了点问题,全盘皆输,为了不再出现问题,我将一点一点的记录下来,以便以后有迹可循(因为自己脑子不好使哈哈)。

a)    服务端:

                               i.         创建一个接口作为我们的服务接口,在接口上加上@webservice,然后写几个方法(就是我们想要调用的方法),如图

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第1张图片

                              ii.         创建一个类来实现我们的服务接口,作为服务类,同样类名上要加@webservice(endpointInterface="com.yuyang.webservice.FightingWS",serviceName="FightService",targetNamespace="http://com.yuyang.fight"),不过这个要多几个配置。第一个:endpointInterface,指向你的服务接口,这个要写,会在发布webservice用到;第二个:servicename,这个我认为写不写都行,就是个标志,不过这个会影响你自动的那个类的名字,不重要;第三个:targetNamespace,这个也不是很重要,但是要有,就是个namespace.

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第2张图片

                             iii.         服务端还差一点就是配置文件,我们用的是spring来托管(如果不用spring可以在main函数中使用Endpoint.pulish()这个方法进行发布)。只需要在配置文件中加一个代理bean即可,这个bean在spring中,baseAddress是必须加的属性,这个使我们的服务接口访问地址。端口号不要与当前项目相同,会冲突。还有其他的几个属性并不重要,选填就行。

                             iv.         这样我们服务端配置完毕,通过浏览器访问http://localhost:8081/FightingWS?wsdl如果是这样的页面,表示我们的服务端已经配好了。

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第3张图片

b)    客户端

                               i.         我们使用的是myeclipse10,myeclipse已经有配置客户端的插件了,所有就是下一步下一步的操作。如图,首先在客户端程序中创建一个webservice client

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第4张图片
选择项目

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第5张图片

Wsdl URl就是我们服务端配置的baseAddress多个参数,固定格式

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第6张图片

下一步,如下图这样就是正常的,如果出现黄色警告,或者报错那就是服务端没有配好,会导致wsdl读取错误,调用时会出现问题。

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第7张图片

会生成这么几个类和接口,其中FightSerivce就是根据我们服务端的servicename 对应生成的名字,我们要用的就是这个类。

spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!_第8张图片

随便找个action、controller或者main方法中使用下面的代码就可以调用我们服务端webservice的服务了

FightService fs=newFightService();

boolean flag=fs.getFightingWSImplPort().fight("", "");

System.out.println(flag);

 

 

你可能感兴趣的:(spring注解方式,使用jax-ws配置webservice,适合小白。看不会你打死我!)