可以参考Tuscany发布Web Service示例这篇文章,发布REST服务与此类似,这里仅列出不同之处。注意项目名和包名都变了,按自己建的项目修改。
maven引用如下
HelloService接口改动如下
package rest;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.QueryParam;
import org.oasisopen.sca.annotation.Remotable;
@Remotable
public interface HelloService {
@GET
@Path("sayHello")
String sayHello(@QueryParam("name") String name);
}
web.composite配置文件如下
<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"
targetNamespace="http://rest"
name="rest">
<component name="HelloComponent">
<implementation.java class="rest.HelloServiceImpl"/>
<service name="HelloService">
<tuscany:binding.rest />
</service>
</component>
</composite>
部署于tomcat运行,用浏览器测试如下
java客户端测试见Spring中应用Apache Wink创建REST服务