创建 Blueprint XML 文件

Blueprint 配置文件包含捆绑软件的组件组合件及配置信息。该文件描述如何在 OSGi 服务注册表中注册组件或者它们如何从 OSGi 服务注册表查询服务。此信息用于在启动捆绑软件时,在运行时实例化并配置必需的组件。

过程

  1. 右键单击捆绑软件项目,然后选择新建 > 蓝图文件。这时,将打开“新建蓝图文件”向导。
  2. 文件名字段中,输入蓝图配置文件的名称,然后单击下一步
  3. 在向导的“添加或移除其他蓝图名称空间”页面中,选择要添加至蓝图文件的名称空间。
    您可以添加蓝图扩展、JPA、资源引用和事务的名称空间。
    了解有关蓝图名称空间的更多信息:
    表 1. 蓝图名称空间的描述
    图解 URL 描述
    蓝图扩展 http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0

    IBM® 蓝图扩展

    “OSGi 蓝图”编程模型的扩展,例如字段注入。

    蓝图安全性 http://www.ibm.com/appserver/schemas/blueprint/security/v1.0.0

    IBM 蓝图安全性

    配置 Bean 安全性,以便只有分配了指定角色的用户才能访问 Bean 的方法。

    更多信息:蓝图安全性和 OSGi 应用程序

    JPA http://aries.apache.org/xmlns/jpa/v1.0.0

    JPA 蓝图支持

    提供 Java™ Persistence API (JPA) 至蓝图内的集成。持久性单元和持久性上下文可以注入到“蓝图”受管 Bean 中。

    资源引用 http://www.ibm.com/appserver/schemas/8.0/blueprint/resourcereference

    蓝图资源引用支持

    提供在 WebSphere® Application Server JNDI 中声明的对象,例如要注入到蓝图管理的 Bean 中的数据源和连接工厂。

    事务 http://aries.apache.org/xmlns/transactions/v1.0.0

    蓝图事务支持

    允许开发者声明“蓝图”受管 Bean 的事务需求。

    注: 如果要添加未在此列表中的其他名称空间,请切换至“源”视图并输入名称空间。
  4. 单击完成。这时,将在编辑器中打开蓝图配置文件。
  5. 单击添加以将组件组合件和配置信息添加至蓝图配置文件。
    bean
    bean 元素定义已实例化的蓝图组件。单击确定以将参数和属性添加至 Bean。
    了解有关 Bean 属性的更多信息:
    ID
    id 属性标识组件。如果组件引用自 Blueprint 中的任何其他位置(例如,如果它引用自服务定义),那么此项是必需的。
    class 属性指定组件的哪个实现类已实例化。
    激活
    此可选属性定义管理器的激活方式。 支持两种激活方式:
    积极
    在蓝图容器初始化期间激活管理器。
    延迟
    在需要时激活管理器。
    缺省情况下,激活设置为“积极”。
    作用域
    根据作用域设置,Bean 管理器可以创建单个或多个对象实例。“蓝图”容器规范定义两个主作用域:
    singleton
    Bean 管理器会创建 Bean 的单个实例并在每次要求该管理器提供对象时返回该实例。
    prototype
    每次要求 Bean 管理器提供对象时,该管理器都会创建 Bean 的新实例。
    缺省情况下,系统对顶级 Bean 管理器采用单一作用域。不能对内联 Bean 管理器设置作用域属性,所以内联管理器始终被认为具有原型作用域。
    依赖项
    指定管理器标识的列表。在激活该管理器之前,先激活所列示的管理器。管理器可具有显式和隐式依赖性。 dependsOn 属性定义显式依赖性。隐式依赖性由管理器定义内其他管理器的引用定义。
    工厂引用
    指定充当工厂的 Bean 或引用管理器的标识。指定的对象必须具有按工厂方法属性指定的工厂方法。
    破坏方法
    指定要在蓝图容器破坏对象实例时调用的方法。
    工厂方法
    指定静态工厂方法的名称。
    初始化方法
    创建该组件时,将调用初始化方法。 如果不希望在初始化捆绑软件期间调用方法,请移除此属性。
    参考资料
    reference 元素指定在服务注册表中找到的服务。单击确定以向引用添加项目。
    了解有关引用属性的更多信息:
    ID
    id 属性标识组件。如果组件引用自 Blueprint 中的任何其他位置(例如,如果它引用自服务定义),那么此项是必需的。
    Interface
    interface 属性指的是组件类实现的接口。
    激活
    此可选属性定义管理器的激活方式。 支持两种激活方式:
    积极
    在蓝图容器初始化期间激活管理器。
    延迟
    在需要时激活管理器。
    缺省情况下,激活设置为“积极”。
    可用性 (Availability)
    按服务引用管理器控制需求,在蓝图容器初始化继续之前,必须已经存在至少一个与选择标准相匹配的服务。availability 属性具有两个值:
    随意
    与标准相匹配的服务不必存在。
    mandatory
    至少有一个与标准相匹配的服务必须存在。
    缺省情况下,可用性设置为“必需”。
    日志过滤器
    指定用于服务选择的过滤表达式。
    Timeout(超时)
    指定代理等待后备服务变为可用的时间量(以毫秒计)。
    组件名称
    指定过滤器所搜索的组件。
    依赖项
    指定管理器标识的列表。在激活该管理器之前,先激活所列示的管理器。管理器可具有显式和隐式依赖性。 dependsOn 属性定义显式依赖性。隐式依赖性由管理器定义内其他管理器的引用定义。
    引用列表
    reference-list 元素允许 reference 元素查找多个匹配的服务。单击确定以向引用列表添加项目。
    了解有关引用列表属性的更多信息:
    ID
    id 属性标识组件。如果组件引用自 Blueprint 中的任何其他位置(例如,如果它引用自服务定义),那么此项是必需的。
    Interface
    interface 属性指的是组件类实现的接口。
    激活
    此可选属性定义管理器的激活方式。 支持两种激活方式:
    积极
    在蓝图容器初始化期间激活管理器。
    延迟
    在需要时激活管理器。
    缺省情况下,激活设置为“积极”。
    可用性 (Availability)
    按服务引用管理器控制需求,在蓝图容器初始化继续之前,必须已经存在至少一个与选择标准相匹配的服务。availability 属性具有两个值:
    随意
    与标准相匹配的服务不必存在。
    mandatory
    至少有一个与标准相匹配的服务必须存在。
    缺省情况下,可用性设置为“必需”。
    日志过滤器
    指定用于服务选择的过滤表达式。
    成员类型
    指定由引用列表管理器提供的成员的类型。 成员类型属性支持:
    service-object
    注入一列服务代理对象。
    service-reference
    注入一列服务引用对象。
    缺省情况下,成员类型设置为“服务对象”。
    组件名称
    指定过滤器所搜索的组件。
    依赖项
    指定管理器标识的列表。在激活该管理器之前,先激活所列示的管理器。管理器可具有显式和隐式依赖性。 dependsOn 属性定义显式依赖性。隐式依赖性由管理器定义内其他管理器的引用定义。
    Service
    service 元素定义将组件导出至 OSGi 服务注册表。单击确定以向服务添加项目。
    了解有关服务属性的更多信息:
    ID
    id 属性标识组件。如果组件引用自 Blueprint 中的任何其他位置(例如,如果它引用自服务定义),那么此项是必需的。
    Interface
    interface 属性指的是组件类实现的接口。
    激活
    此可选属性定义管理器的激活方式。 支持两种激活方式:
    积极
    在蓝图容器初始化期间激活管理器。
    延迟
    在需要时激活管理器。
    缺省情况下,激活设置为“积极”。
    Auto-Export
    自动导出设置由自动导出属性指定并支持以下 4 个选项:
    禁用的
    如果未指定自动导出属性,那么这是缺省值。 必须使用接口属性或接口子元素来指定接口的列表。
    界面
    通过使用服务类及其任何超类所实现的所有公共接口来注册服务。
    类层次结构
    通过使用服务类及其公共超类来注册服务。
    所有类
    组合了接口和类层次结构选项。
    级别
    您可以使用等级属性来公开具有特定等级的服务。
    参考资料
    ref 属性指的是所导出的组件的组件标识。此标识是在组件元素中定义的。
    依赖项
    指定管理器标识的列表。在激活该管理器之前,先激活所列示的管理器。管理器可具有显式和隐式依赖性。 dependsOn 属性定义显式依赖性。隐式依赖性由管理器定义内其他管理器的引用定义。
    类型转换器
    type-converters 元素会在数据类型之间转换值。单击确定以向类型转换器添加项目。

    有关蓝图配置文件的更多信息,请参阅帮助主题 OSGi 蓝图 XML 文件OSGi 蓝图容器规范

  6. 单击打开 WebSphere 蓝图绑定描述符以创建包含对捆绑软件的认证别名绑定的资源引用的 OSGi 蓝图配置文件。

    将 OSGi 应用程序作为资产进行部署时,如果它包含 OSGi 蓝图绑定配置文件,那么此绑定配置文件将提供在绑定资源引用时使用的缺省认证别名值。

    有关蓝图绑定文件的更多信息,请参阅创建蓝图绑定 XML 文件

  7. 单击添加和移除其他蓝图名称空间以将名称空间添加至蓝图 XML 文件。
    1. 在“蓝图名称空间”对话框中,选择要添加至蓝图文件的名称空间。
    2. 单击完成

    这些元素已根据您添加至蓝图 XML 文件的蓝图名称空间进行启用。

    上下文 (Context)
    bpjpa:context 元素会对蓝图事务内使用的 JPA Bean 扩展 Apache Aries 蓝图规范。当您添加 JPA 名称空间时就会添加此元素。单击添加以向该元素添加属性。
    属性占位符
    bpext:property-placeholder 元素会添加 Apache Aries 蓝图规范的扩展。当您添加“蓝图”扩展名称空间时就会添加此元素。单击添加以向该元素添加属性。
    资源引用
    bpresref:resource-reference 元素将资源引用(例如,数据源)注入到 Bean 或服务中。 当您添加“资源引用”名称空间时就会添加此元素。单击添加以向该元素添加属性。
    交易处理
    tx:transaction 元素通过向蓝图文件添加事务属性来扩展 Apache Aries 蓝图规范。当您添加“事务”名称空间时就会添加此元素。单击添加以向该元素添加属性。
  8. 保存文件。

    有关 OSGi 蓝图 XML 文件的更多信息,请参阅以下子主题:

指示主题类型的图标 任务主题
信息中心的条款和条件 | 反馈

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

文件名:tcrtblueprintxml.html