< 上一课 | 下一课 >

课程 3:创建蓝图配置文件

Blueprint 配置文件包含捆绑软件的组件组合件及配置信息。该文件描述如何在 OSGi 服务注册表中注册组件或者它们如何从 OSGi 服务注册表查询服务。此信息用于在启动捆绑软件时,在运行时实例化并配置必需的组件。 在本教程中,蓝图文件会定义其他组件可用于访问课程 2 中所定义的计数器的服务。

在本课程中,您将创建用于定义和描述 CounterServiceBundle 所提供的服务的蓝图配置文件。

要创建蓝图配置文件,请执行下列操作:

  1. 右键单击项目 CounterServiceBundle 并选择新建 > 蓝图文件,然后单击完成。这时,将在编辑器中打开蓝图配置文件。
  2. 将组件组合件和配置信息添加至蓝图配置文件:
    1. 在编辑器的“设计”选项卡中,单击添加。这时,将打开“添加项目”对话框。
    2. 单击 Bean,然后单击确定。这时,将打开“Bean 详细信息”对话框。
    3. 配置 Bean:
      1. Bean 标识字段中,输入 CounterBean
      2. Bean 类字段中,单击浏览。这时,将打开“选择类型”对话框。在选择类型名称字段中,输入 CounterImpl,然后选择 CounterImpl 类。单击确定
      3. 单击确定以接受更改并关闭对话框。
      4. 在编辑器中初始化方法字段的“方法引用”部分下面,输入 init
      这时,会将 Bean 添加至蓝图文件。
    4. 单击蓝图,然后单击添加。这时,将打开“添加项目”对话框。
    5. 单击服务,然后单击确定。这时,将打开“服务详细信息”对话框。
    6. 配置服务:
      1. 服务接口字段中,单击浏览,然后选择您在课程 2中创建的 Counter 接口。单击确定
      2. Bean 引用字段中,单击浏览,然后选择 Bean:CounterBean。单击确定
      3. 单击确定以接受更改并关闭对话框。
      这时,会将该服务添加至蓝图文件。
  3. 保存文件。
切换至“源代码”选项卡以查看蓝图配置源代码:
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
	<bean id="CounterBean" class="com.ibm.ws.eba.counter.CounterImpl" init-method="init"/>
	<service id="CounterBeanService" ref="CounterBean"
		interface="com.ibm.ws.eba.counter.Counter" />
</blueprint>
提示: 要格式化源代码,请按 Ctrl+Shift+F。
了解有关此蓝图配置文件的更多信息:
bean
bean 元素定义已实例化的蓝图组件。
在本教程中,bean 元素会通过调用 CounterImpl 类构造方法来实现组件 Counter 的实例化。创建该类之后,将调用 getCount() 初始化方法。
class
class 属性指定组件的哪个实现类已实例化。
ld
id 属性标识组件。如果组件引用自 Blueprint 中的任何其他位置(例如,如果它引用自服务定义),那么此项是必需的。
init-method
创建组件时,将调用 init-method init()。如果不希望在初始化捆绑软件期间调用方法,请移除此属性。
维修
service 元素定义将组件导出至 OSGi 服务注册表。
在本教程中,service 元素会将名为 Counter 的组件作为 OSGi 服务注册表中具有接口 com.ibm.ws.eba.counter.Counter(由接口属性指定)的服务进行导出。
参考
ref 属性指的是所导出的组件的组件标识。此标识是在组件元素中定义的。
interface
interface 属性指的是组件类实现的接口。

有关蓝图配置文件的更多信息,请参阅 OSGi 蓝图 XMLOSGi 蓝图组件模型 (RFC124)

课程复习要点

您创建了 OSGi Counter 捆绑软件的蓝图配置文件。

在本课程中,您学习了以下主题:
  • 如何创建 blueprint.xml 文件。
  • 如何配置 blueprint.xml 文件。
< 上一课 | 下一课 >
指示主题类型的图标 教程课程主题
信息中心的条款和条件 | 反馈

时间戳记图标 最近一次更新时间: 2014 年 4 月 17 日

文件名:counter_lesson3.html