JBoss 项目
Red Hat

SwitchYard

让 SOA 再次有趣起来

SwitchYard Camel Editor with Project View

SwitchYard 是一个基于组件的开发框架,专注于利用 SOA 的概念和最佳实践构建结构化、易于维护的服务和应用程序。它与 Apache Camel 合作,以提供快速、简单、灵活的集成运行时,且具有全面的连接性和传输方式。一个统一的应用程序模型增强了 Apache Camel,将 Java EE、BPM、规则、编排和路由整合到一个内聚的开发模型和运行时中。通用功能和交叉关切——验证、转换和策略——与业务逻辑分离并以声明方式处理。这样可以确保一致性并消除重复,使开发人员可以清楚地了解集成应用程序中服务的结构和关系。

要了解详细信息,请查看 SwitchYard 项目主页

如果你只希望能好好利用它,就签出我们的 教程

项目向导

开始使用 SwitchYard

features switchyard new project wizard

使用 SwitchYard 项目向导创建基于 Maven 的项目,可以将其配置为使用各种组件,如 CDI、jBPM、Drools、BPEL 和 Camel 路由,以及各种端点类型,包括:SOAP、REST、HTTP、文件、邮件、JMS、JCA、S/FTP、JPA、SQL、TCP/UDP 等。

配置 SwitchYard 能力

轻松添加和删除对特定 SwitchYard 能力的支持

features switchyard project properties

可轻松地向现有 Maven 项目添加 SwitchYard 支持,以及更新项目中使用的能力(例如 CDI、BPM、SOAP、FTP 等)。SwitchYard 项目验证器将会告知你项目是否缺少能力或任何指定能力是否多余(根据项目中使用的功能)。

SwitchYard 编辑器

轻松创建和配置你的 SwitchYard 应用程序

SwitchYard  Editor with Project View

SwitchYard 编辑器使用户能够轻松地管理应用程序配置,提供以下功能

  • 创建和配置组件、服务和引用。

  • 组件服务/引用提升和网关绑定的配置。

  • 为新服务组件(例如 bean 类、BPMN2 文件、DRL 文件,等等)创建实现框架。

  • 为服务创建单元测试框架。

  • 配置消息转换器,包括为消息转换器(例如 XSL、Java 等)创建实现框架。

  • 创建工件引用。

单元测试

轻松创建服务单元测试

features switchyard new test wizard

使用新服务测试向导轻松生成所有服务的测试存根,在 SwitchYard 编辑器中任何服务或引用的工具板上轻松获取。

package com.example.switchyard.example;

import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.switchyard.component.test.mixins.cdi.CDIMixIn;
import org.switchyard.test.Invoker;
import org.switchyard.test.ServiceOperation;
import org.switchyard.test.SwitchYardRunner;
import org.switchyard.test.SwitchYardTestCaseConfig;
import org.switchyard.test.SwitchYardTestKit;

@RunWith(SwitchYardRunner.class)
@SwitchYardTestCaseConfig(config = SwitchYardTestCaseConfig.SWITCHYARD_XML, mixins = { CDIMixIn.class })
public class ExampleServiceTest {

    private SwitchYardTestKit testKit;
    private CDIMixIn cdiMixIn;
    @ServiceOperation("ExampleService")
    private Invoker service;

    @Test
    public void testSayHello() throws Exception {
        // TODO Auto-generated method stub
        // initialize your test message
        String message = "Bob";
        String result = service.operation("sayHello").sendInOut(message)
                .getContent(String.class);

        // validate the results
        Assert.assertTrue("Hello, Bob".equals(result));
    }

}

其他功能

其他功能,简化 SwitchYard 项目的开发

features switchyard java2wsdl wizard
Java2WSDL 和 WSDL2Java

使用方便的向导和对 JAXB 的内置支持,轻松集成基于 Java 和 WSDL 的接口。

XML 目录支持

提供对所有 SwitchYard 架构的工作区访问权限。

Maven 集成

无需为 SwitchYard 配置 mojo 添加排除项。

工作区部署

直接从工作区部署项目(需要已安装 SwitchYard/Fuse Service Works 的 WildFly/EAP 服务器)

返回顶部