`
孤魂野鬼
  • 浏览: 10485 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Hello Tuscany

    博客分类:
  • java
阅读更多
1.创建maven web 项目
2.pom.xml配置tuscany依赖
3.配置web.xml
4.创建测试接口和实现类
5.配置classpath/META-INF/sca-deployables/*.composite
6.使用REST Client 调用 http://localhost:8080/部署名/testRest/testList1?id=xxx

<!-- pom.xml -->
<dependency>
    <groupId>org.apache.tuscany.sca</groupId>
    <artifactId>tuscany-base-runtime</artifactId>
    <version>${tuscany.version}</version>
    <exclusions>
        <!-- 防止旧版本 和新版本冲突 -->
        <exclusion>
            <groupId>org.apache.neethi</groupId>
            <artifactId>neethi</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.apache.tuscany.sca</groupId>
    <artifactId>tuscany-binding-rest-runtime</artifactId>
    <version>${tuscany.version}</version>
    <exclusions>

        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-assembly</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-xml</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-xsd</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-binding-rest</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-binding-rmi</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-common-http</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-common-java</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-common-xml</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-contribution</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-core</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-core-spi</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-extensibility</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-interface-java</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-interface-wsdl</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-monitor</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-sca-api</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-web-javascript</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-xsd</artifactId>
        </exclusion>

        <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
        </exclusion>
        <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-jdk14</artifactId>
        </exclusion>
        <!-- -->
    </exclusions>
</dependency>
<dependency>
    <groupId>org.apache.tuscany.sca</groupId>
    <artifactId>tuscany-binding-rmi-runtime</artifactId>
    <version>${tuscany.version}</version>
    <exclusions>
        <exclusion>
            <groupId>org.apache.tuscany.sca</groupId>
            <artifactId>tuscany-binding-rmi</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<!-- web.xml -->
<filter>
        <filter-name>tuscany</filter-name>
        <filter-class>
            org.apache.tuscany.sca.host.webapp.TuscanyServletFilter
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>tuscany</filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

//接口
@Remotable
public interface TestInterface {
    @GET
    @Path("testList1")
    @Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
    List<String> testList(@QueryParam("id") String id);
}

//实现类
public class TestImp implements TestInterface {
    @Override
    public List<String> testList(String id) {
        int i = 0;
        List<String> list = new ArrayList<>();
        while (i < 10){
            list.add(i + "");
            i++;
        }
        return list;
    }
}

<!-- .composite -->
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
           xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.1"
           targetNamespace="http://com.grover.mdm.sca"
           name="mdm">
    <component name="TestComponent">
        <implementation.java class="com.grover.mdm.test.TestImp"/>
        <service name="TestInterface" >
           <tuscany:binding.rest name="testJaxrsBind" uri="/mdm/testRest">
              <tuscany:wireFormat.json />
              <tuscany:operationSelector.jaxrs />
           </tuscany:binding.rest>
        </service>
    </component>

</composite>
分享到:
评论

相关推荐

    tuscany发布webservice实例

    【Tuscany发布Web服务实例详解】 Tuscany项目是一个开放源码的SOA(Service-Oriented Architecture,面向服务架构)实现,由Apache软件基金会维护。它提供了一个灵活、可扩展的框架来构建和部署分布式服务。在这个...

    apaceh -TUSCANY 源码

    Apache Tuscany是Apache软件基金会的一个开源项目,它专注于服务组件架构(Service Component Architecture, SCA)的实现。SCA是一种用于构建和部署分布式应用程序的规范,它允许开发者使用多种编程语言和数据格式来...

    tuscany的一点文档

    【Tuscany与SCA策略】 Tuscany是一个开源的服务组合架构(Service Component Architecture, SCA)实现,它提供了一种方式来管理和控制应用程序中与业务逻辑正交的方面,比如日志、监控和安全性。策略在Tuscany和SCA...

    Tuscany的开源项目Tuscany_sdo(C++版)

    **Tuscany开源项目概述** Tuscany是一个由Apache软件基金会维护的开源项目,它致力于提供一个服务导向架构(Service-Oriented Architecture, SOA)的实现,支持跨平台、跨语言的服务集成。Tuscany的目标是促进SOA的...

    tuscany1.6.2

    【标题】"tuscany1.6.2" 指的是Apache Tuscany项目的一个特定版本,即1.6.2版。Apache Tuscany是开源软件联盟Apache软件基金会下的一个项目,它是一个服务组件架构(Service Component Architecture, SCA)实现,...

    Tuscany 架构图

    Tuscany架构 Tuscany架构.jpg Tuscany架构.jpg

    apache-tuscany-sca-1.6.2

    Apache Tuscany SCA(Service Component Architecture)是一个开源框架,由Apache软件基金会开发,用于构建分布式应用程序和服务。SCA是一种标准,它定义了一种模型来组合、管理和部署服务及组件,使得开发人员能够...

    Apache Tuscany SCA 用户指南StepByStep

    Apache Tuscany SCA(Service Component Architecture)是Apache软件基金会开发的一个开源项目,它提供了一个用于构建、部署和管理服务的框架。SCA是一种服务导向架构(SOA)标准,旨在简化不同技术间的互操作性,使...

    Tuscany SCA与Spring、Hibernate整合实例-简洁方法

    **SCA(Service Component Architecture)服务组件架构**是Apache Tuscany项目的一部分,它是一种用于构建分布式应用程序和服务的开源框架。Tuscany SCA提供了一种声明式的方式来组合和管理服务,使得开发者能够关注...

    Tuscany SCA in Action

    《Tuscany SCA在行动》一书深入探讨了Service Component Architecture(SCA)与Apache Tuscany项目,这是IT领域内对服务组件架构及其实现的重要研究资料。以下是基于标题、描述、部分目录和标签生成的相关IT知识点:...

    tuscany-wsdl2java-1.5

    tuscany wsdl2java tools

    soa-tuscany资料与5个小例子

    5个代码例子使用的是 Tuscany1.5版本。请在官网下载jar包。 下载地址:http://archive.apache.org/dist/tuscany/java/sca/1.5/apache-tuscany-sca-1.5.zip 5个例子从不同的角度讲解了tuscany的整体架构思想。文档...

    Apache tuscany SCA实例

    Apache Tuscany是Apache软件基金会的一个开源项目,它实现了Service Component Architecture(SCA,服务组件架构),这是一种用于构建和集成分布式应用程序的规范。这个实例可能是关于如何使用Apache Tuscany来开发...

    apache-tuscany-sca-1.6.zip

    Apache Tuscany SCA(Service Component Architecture)是一个开源项目,由Apache软件基金会维护,它提供了一个框架和中间件,用于构建、部署和管理分布式应用程序。SCA是一种标准,旨在简化服务导向架构(SOA)的...

    Tuscany实战源代码

    【Tuscany实战源代码】是一份非常宝贵的资源,它主要涵盖了Apache Tuscany的相关实践与源码解析,旨在帮助那些无法便捷访问网络的学习者深入理解Tuscany框架的内部工作原理和应用方法。Apache Tuscany是一个开源的...

    Tuscany 1.6 part1

    最流行的SAO开源产品的最新版,分5个部分压缩;其它部分不要分。

    基于Tuscany SCA的分布式SCA应用的设计与实现.pdf

    Tuscany SCA(Service Component Architecture)是由Apache软件基金会所提供的一个开源框架,用于实现服务组件架构。它支持SCA规范,能够简化服务的部署、管理和交互。Tuscany SCA框架可以帮助开发者快速构建和部署...

Global site tag (gtag.js) - Google Analytics