探索SwitchYard 2.0.0.Alpha2快速入门

在我的最后一篇文章中,我解释了如何在WildFly 8.1上使用SwitchYard。 同时,该项目很忙,并发布了另一个Alpha2。 这是一个很好的机会,在这里浏览快速入门并刷新您的记忆。 除了版本更改之外,您仍然可以使用较早的博客来使用最新的Switchyard设置本地WildFly 8服务器 。 与所有框架一样,有很多东西可以探索,而这样做的先决条件是拥有一个可以正常工作的开发环境,以使其变得更容易。


设置JBoss Developer Studio

b
首先是第一件事。 下载适用于您的操作系统的最新JBoss Developer Studio(JBDS)7.1.1.GA的副本并进行安装。 您应该已经有一个简单的JDK:

java -jar jbdevstudio-product-eap-universal-7.1.1.GA-v20140314-2145-B688.jar

将工作。 简单的9步安装程序将指导您完成必要的步骤。 确保选择合适的JDK安装。 JBDS可以使用Java SE 6.x和7.x,并且已经过测试。 如果愿意,请安装完整的EAP,但这不是本教程的必要条件。 没有EAP的基本设置需要大约400 MB的磁盘空间,并且不应该花费几分钟。 如果完成了那部分,请启动IDE,然后继续并配置工具。 我们需要JBoss工具集成栈(JBTIS)。 通过访问“帮助->安装新软件”来配置它们,并使用“添加”按钮添加新的更新站点。 将其称为SY-Development,并将其指向:“ http://download.jboss.org/jbosstools/updates/development/kepler/integration-stack/”

等待列表刷新并扩展JBoss集成和SOA开发,然后选择所有三个SwitchYard条目。 在向导中单击您的方式,即可重新开始。

SY工具2.0.0

SY工具2.0.0

安装后,请确保禁用首选项中的“荣誉”所有XML模式位置,即XML→XML文件→验证。 这将防止在switchyard.xml文件中出现错误的XML验证错误。

防止错误的XML验证

防止错误的XML验证

就是这样。 继续并从先前的博客文章 (导入-> Maven->现有Maven项目)中导入bean服务示例。

有关SwitchYard项目的一般信息

在深入研究bean服务示例之前,让我们进一步了解SwitchYard项目的总体布局。 SwitchYard项目是基于Maven的项目,具有以下特征:

  • 项目的META-INF文件夹中的switchyard.xml文件
  • 在pom.xml文件中声明的一个或多个SwitchYard运行时依赖项
  • 在pom.xml文件中配置的org.switchyard:switchyard-plugin mojo

通常,SwitchYard项目还可以包含用于实现应用程序的各种其他资源,例如:Java,BPMN2,DRL,BPEL,WSDL,XSD和XML文件。 该工具支持您创建,更改和开发SY项目。 您还可以将SY功能添加到现有的Maven项目中。 可以在Eclipse工具的文档中找到更多详细信息。

探索Bean服务示例

Bean-Service示例是对SY产生第一印象的更简单示例之一。 Quickstarts存储库中的所有示例应用程序都包含在安装的quickstarts /目录中,也可以在GitHub上找到 。 bean服务快速入门演示了bean组件的用法。 该场景很简单:通过OrderServiceBean提供的OrderService和通过InventoryServiceBean实现提供的InventoryService负责订单。 订单通过OrderService.submitOrder提交,然后OrderService在InventoryService中查找项目,以查看它们是否有库存,并且可以处理该订单。 到目前为止,它基本上是一个基于CDI的简单Java EE应用程序。 在此应用程序中,通过SOAP网关绑定(用小信封表示)调用了简单的过程。

Bean Service快速入门概述

Bean Service快速入门概述

让我们深入研究实现。 查看OrderServiceBean将揭示更多细节。 定义操作的是OrderService接口的实现。 OrderServiceBean只是一个bean类,很少有额外的CDI批注。 最值得注意的是:

@org.switchyard.component.bean.Service(OrderService.class)

@Service批注允许SwitchYard CDI扩展在运行时发现您的bean并将其注册为服务。 每个bean服务必须具有@Service批注,该批注的值标识该服务的服务接口。 除了在SwitchYard中提供服务之外,Bean还可以使用其他服务。 这些参考文献需要注入。 在此示例中,注入了InventoryService:

@Inject@org.switchyard.component.bean.Referenceprivate InventoryService _inventory;

最后,您所需要的只是switchyard.xml配置文件,其中描述了服务,组件,类型和实现。

<composite name="orders" ><component name="OrderService"><implementation.bean class="org.switchyard.quickstarts.bean.service.OrderServiceBean"/><service name="OrderService"><interface.java interface="org.switchyard.quickstarts.bean.service.OrderService"/></service></component>
</composite>

那是一个非常Swift的失败。 我们还没有涉及Web服务端点,WSDL和Transformer配置和实现。 看看mastertheboss发布的SwitchYard教程 ,并有机会在以下链接中阅读有关SY的更多信息:

  • SwitchYard项目文档
  • SwitchYard主页
  • JBoss.org上的社区页面
  • SwitchYard是Fuse ServiceWorks的一部分,可以在完整的SOA套件中尝试一下。

翻译自: https://www.javacodegeeks.com/2014/10/exploring-the-switchyard-2-0-0-alpha2-quickstarts.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/361876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

走进webpack(1)--环境拆分及模块化

初级的文章和demo已经基本完成了&#xff0c;代码也已经上传到了我的github上&#xff0c;如果你对webpack的使用并不是十分了解&#xff0c;那么建议你回头看下走近系列&#xff0c;里面包括了当前项目中使用频繁的插件&#xff0c;loader的讲解。以及基本的webpack配置&#…

适用于微服务架构的Apache Camel

在知道微服务架构被称为之前&#xff0c;我一直在使用它们。 我曾经使用过由隔离模块组成的管道应用程序&#xff0c;这些模块通过队列相互交互。 从那时起&#xff0c;许多&#xff08;前&#xff09;ThoughtWorks专家讨论了微服务。 首先是 Fred George&#xff0c; 然后是 J…

QueryString加密

有些人不想由URL暴露一些訊息&#xff0c;除了可以使用URL Rewrite之外&#xff0c;其實簡便一點的方法還有使用編碼or加密來達到偽裝的目的。使用Base64的原因是因為他的編碼不會有難以接受的特殊字元(註1)&#xff0c;你也可以用其他的編碼or加密算法替代(註2)。其實這邊已經…

即时大数据流处理=即时风暴

在Ubuntu背后的公司Canonical&#xff0c;每6个月进行一次技术工作&#xff0c;以第一手测试我们的工具并向其他人展示新想法。 这次&#xff0c;我创建了一个即时大数据解决方案&#xff0c;更具体地讲是“即时风暴”。 Storm现在是Apache基金会的一部分&#xff0c;但以前St…

webstorm中vue项目--运行配制

## npm搭建的项目&#xff0c;需要运行npm run dev来启动 webstorm作为一款优秀的编辑器&#xff0c;通过配置运行设置&#xff0c;达到一键运行 1.添加node.js配置 2.configuration->node interpreter : 路径/node.exe 3.configuration->working directory&#xff1a; …

VS2010 自动化整理代码(1)--- VS正则表达替换 PK Vim

自从开始在VS2010的IDE中开始用正则表达式修改 最近为了给Fortran找个好一点的编辑器&#xff0c;又开始使用Vim了。Vim是久负盛名的编辑器之神&#xff0c;可我们习惯了Visual Studio的智能提示等方便的操作&#xff0c;就总在琢磨要是VS 1. VS正则表达替换 PK Vim 这是善用…

2019.7.16考试总结

对于这个狗屎成绩我不想说什么&#xff0c;&#xff0c;&#xff0c;&#xff0c;&#xff0c;前两次考炸也就算了&#xff0c;主要因为不会&#xff0c;这次考成这狗屎&#xff0c;是因为手残眼瘸大脑间歇性抽搐 T1&#xff1a;我是菜鸡&#xff0c;我是蒟蒻&#xff0c;我好菜…

PrimeFaces Extensions中的全新JSF组件

PrimeFaces扩展团队很高兴宣布即将推出的3.0.0主要版本的几个新组件。 我们的新提交人Francesco Strazzullo为该项目提供了“ Turbo Boost”&#xff0c;并带来了至少6个已成功集成的 JSF组件&#xff01; 当前的开发状态是OpenShift上的deployet – 请查看展示柜。以下是有关添…

15 个最新的 CSS3 教程

1. 创建一个漂亮的图标 这个教程将教你如何用纯CSS3创建一个图中的图标2. CSS3 图片样式 这个教程将教你如何使用 box-shadow, border-radius和transition。3. CSS3 Transition 的模糊效果4. 实用的CSS3圆角表格5. 创建纯CSS3的票式标签6. 原始的鼠标浮动效果 这个教程将创建缩…

C++内存管理——指针数组

C/C程序中&#xff0c;指针和数组在不少地方可以相互替换着用&#xff0c;让人产生一种错觉&#xff0c;以为两者是等价的。但二者有着本质的区别&#xff1a;数组&#xff1a;要么在静态存储区被创建(如全局数组)&#xff0c;要么在栈上被创建。数组名对应着&#xff08;而不是…

flex弹性盒子

注意事项 1.设为Flex布局之后&#xff0c;子元素的float&#xff0c;clear和vertical-align属性都讲失效 2.采用Flex布局的元素&#xff0c;称为Flex容器&#xff08;Flex container&#xff09;&#xff0c;所有的子元素成为容器成员&#xff0c;称为Flex项目&#xff08;Fle…

开始JBoss BPM流程的3种基本方法

这一集提示和技巧将帮助您了解根据需要启动流程实例的最佳方法。 规划项目可能包括流程项目&#xff0c;但是您是否考虑过可以启动流程的各种方式&#xff1f; 也许您的JBoss BPM Suite在您的体系结构中本地运行&#xff0c;也许您在云中运行&#xff0c;但是无论它在哪里&am…

用asp.net编写冒泡排序法

这里写了一个冒泡排序的函数. int[] a newint[10] { 12,564,95,44,69,499,693,6746,6496,124}; for(inti0;i<a.Length;i) for(intj i1; j <10; j) { int min a[i]; if (a[i] > a[j]) //升序排列 …

7月17日每日一答

1 什么是闭包函数&#xff0c;闭包函数满足什么样的条件&#xff1f;请写一个常见的闭包函数。 所谓的函数闭包本质是函数的嵌套和高阶函数。我们来看看要实现函数闭包要满足什么条件&#xff08;缺一不可&#xff09;&#xff1a; 1)必须嵌套函数 2)内嵌函数必须引用一个定义在…

BZOJ1706奶牛接力跑

这个东西思路还是不错的。 解法就是把矩阵幂的加法改成取min&#xff0c;乘法改成加法就好&#xff0c;和floyed是一样的。这样的话&#xff0c;矩阵操作一次就相当于松弛了一次最短路。 建矩阵的过程也比较简单&#xff0c;可以离散化&#xff0c;当然下面有另一种更优秀的打法…

EJB 3.x:生命周期和并发模型(第2部分)

这是两部分系列的第二篇。 第一部分介绍了有状态和无状态EJB的生命周期以及并发行为。 在这篇文章中&#xff0c;我将介绍Singleton EJB 。 Singleton模式可以说是最常用&#xff08;有时被滥用&#xff01;&#xff09;的模式。 单吨又爱它&#xff01; Java EE使我们无需编…

MVC2中Area的路由注册实现

今天碰到了一个不可思议的bug&#xff0c;新增的controller中任何action都无法访问&#xff0c;都是返回404错误。一般这种错误要么是拼写错误&#xff0c;要么是不小心给action加了post属性&#xff0c;但是经过初步的排查&#xff0c;没有发现问题。而原有的controller中任何…

当Java 8 Streams API不够用时

Java 8与往常一样是妥协和向后兼容的版本。 JSR-335专家组可能无法与某些读者就某些功能的范围或可行性达成一致的发行版。 请参阅Brian Goetz关于为什么…的一些具体解释。 …Java 8默认方法中不允许“最终” …Java 8默认方法中不允许“同步” 但是今天&#xff0c;我们将…

父类作为方法的形参以及父类作为方法返回值

1、父类作为方法的形参 语句&#xff1a;修饰符 父类类型 方法名(){} 2、父类作为方法返回值 语句&#xff1a;修饰符 void/返回值类型 方法名(父类类型 形参名){} 代码例子&#xff1a; 动物类&#xff1a; /*** author Mr.Wang* 宠物类**/ public abstract class Animals {pr…

在Spring Boot中使用@ConfigurationProperties

在最近的博客文章中&#xff0c;我简短地介绍了如何在Spring Boot应用程序中配置邮件 。 要将属性注入配置中&#xff0c;我使用了Spring的Value注释。 但是Spring Boot提供了一种使用属性的替代方法&#xff0c;该方法允许强类型的Bean来管理和验证应用程序的配置。 在本文中&…