SCA符合应用的每一个组件都是使用实施类型实施的。SCA技术参数定义了许多实施类型并且Tuscany项目也增加了一些。
SCA Java组件实施技术参数定义了实施。实施类型允许应用开发使用新的或现有Java类来实施SCA组件。这些组件随后可以连线其他组件,本地的或者远程的,从而形成复合应用。
定义Java组件实施
定义Java组件实施很简单。使用来自TuscanySCATour的Payment组件应用作为一个例子。Payment组件的最简单的形式是使用.Java元素定义实施,它参照Java类Payment. PaymentImpl。下面的代码片段显示了组件如何定义以及使得Payment符合有用。
图一Java实施为组件提供业务逻辑,提供服务并使用参照和属性。
当然,TuscanySCATour应用中,Payment组件同其他组件协作。图二展示了由Payment组件连接用实施.Java实施的其他组件组成的复合应用。
图二Payment Java组件连接其所以来的其他组件。
CustomerRegistry组件查找基于客户ID的客户支付信息,CreditCardPayment组件处理支付本身,EmailGateway组件告知客户支付状态。下面的代码片段展示了作为复合文件出现的Payment组件的配置。
每个参照元素配置的目标属性引用实施组件应用。属性元素在组件实施中为交易费用属性设置值。注意到我们可以在不改变PaymentImpl类的情况下,改变参照(目标或绑定)以及属性(值)设置。最大的好处是这些决策可以推迟至应用装配时间。
你想知道Java实施内服务、参照和属性是如何定义的吗?让我们使用支付的例子看看Java注释为Payment组件,如何被添加到Java类中来定义SCA服务、属性和参照的。有不同的风格可供使用。