WSO2 ——(6)开发几种services的方法:SOAP与REST


1 Axis2 Serviceaar文件)

1.1 创建工程

打开Developer Studio Dashboard,点击 Axis2 Service Project,点击next,只至出现如下界面,点击finish

 

1.2 添加方法

Service类中添加一个方法,如下图所示。

 

1.3 产生WSDL文件

右击工程,选择Generate WSDL,指定位置和名称,点击OK

 

1.4 打包为aar文件

右击工程名,选择Export Project as Deployable Archive。结果如下图所示,点击finish,桌面生成Axis2ServiceTest_1.0.0.aar文件。

 

1.5 部署到WSO2 Application Server

打开WSO2 Application Server,选择services->Add->AAR Service,选择Axis2ServiceTest_1.0.0.aar文件,上传。

 

services列表中可以看到部署的服务。

 

点击try this Service,结果如下。

 

2 CXFwar文件JAX-WS

https://docs.wso2.com/display/AS510/JAX-WS+and+JAX-RS+Support

http://wso2.com/library/articles/2012/10/develop-cxf-based-jaxws-wso2-developer-studio/

2.1 创建工程

新建JAX-WS Service Project 工程。打开Developer Studio Dashboard,点击 JAX-WS Service Project ,点击next,只至出现如下界面,点击finish。填写工程名和类名。

 

2.2 创建Java服务类

右击刚才创建的工程,选择New -> JAX-WS Service Class ,如下图所示。

 

2.3 添加方法

默认类中已经存在一个Hello方法,可以根据需要添加方法。最简单可用的webService定义如下:

 

 

Wsdl与接口中定义的ServiceName一致。

但若将接口改为如下,删除action=”hello”,则报错误。<faultstring>The endpoint reference (EPR) for the Operation not found is /services/a4.a4HttpSoap11Endpoint and the WSA Action = . If this EPR was previously reachable, please contact the server administrator.</faultstring>

 

2.4 打包为war文件

右击工程名,选择“Export Project as Deployable Archive”。结果如下图所示,点击finish,桌面生成JAXWSTest_1.0.0.war文件。

 

2.5 部署到WSO2 Application Server

1)打开WSO2 Application Server,选择services->Add->JAX-WS/JAX-RSS,选择JAXWSTest_1.0.0.war文件,上传。

 

2)单击列表,在services列表中可以看到部署的服务。

 

3)单击find services

 

4)单击wsdl,可以查看服务部署成功

5)单击服务名称

 

6)单击尝试调用服务

 

 

3 可能出现的错误

No binding operation info while invoking unknown method with params unknown

CXF方法在创建完服务,定义代理服务时,可能报错:org.apache.cxf.interceptor.Fault: No binding operation info while invoking unknown method with param

如果soap方法与WSDL不匹配发生这个错误。Soap消息不能匹配到服务中一个方法

3.1 解决方法

接口中定义方法的操作,而不是在实现类中定义。测试可用。

 

 


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值