前面已经创建好了服务类,并且发布了服务,现在要去调用发布放服务; 

  在这里我将其分成两个项目;

  1.重新创建一个WebProject ,并且使用wsdl2java 这个工具生成了客户端的代码(得先配置CXF的环境);

    在这里小弟我遇到了一个揪心的问题,首先我使用的是JDK1.8,然后在doc中生成代码的时候会出现这样的提示

  ‘由于 accessExternalSchema 属性设置的限制而不允许 'file' 访问,因此无法读取方案文档 'xjc.xsd'

  然后我将其替换成1.7的JDK, 然而并没有什么用,还是继续这提示,最后的解决方法就是我在JDK1.7的jre的lib中添加了一个叫‘jaxp.properties ’的配置文件,内容为

javax.xml.accessExternalSchema = all,顺利解决; 

 在DOC中生成代码的语句 :wsdl2java -d . http://localhost:8080/CxfAndSpring/ws/weather?wsdl

 代码生成后如下

  

  2.开始配置applicationContext.xml文件

  

  address就是server的WSDL文档地址  ;

  serviceclass就是wsdl文档中的porttype ,也就是你发布的接口名称,可以把你的wsdl文档拉到最下面,然后根据bingding的名称去找到porttype;

 

  在这里我的porttype 就是weatherCXF

  在这里就把客户端配置完成,然后就来用junt 来测试client

  1 先加载spring的配置文件:

  

2.然后拿到我们配置好的bean 之后就可以拿到结果了~

搞定睡觉。。。

 

posted on 2016-10-12 00:37  程英俊  阅读(5244)  评论(0编辑  收藏  举报