跳到主要内容
版本:3.1.0(预览)

View 定义

View 定义文件(view.xml)是 View 框架读取的软件包描述符,其 XML 架构维护在 ambari-views/src/main/resources/view.xsd

必需的标识

<view> 元素必须使用 <name><label><version> 标识 View。可选的 <min-ambari-version><max-ambari-version> 限制可部署它的 Ambari 版本。<description><icon><icon64> 提供显示元数据。

<view>
<name>MY_VIEW</name>
<label>My View</label>
<version>1.0.0</version>
</view>

资源和配置

使用 <parameter> 定义创建实例时必须提供或可供选择的值。参数可以定义标签、占位符、默认值、requiredmasked 行为。使用 <permission> 定义 View 特定的权限名称。

使用 <resource> 暴露服务器资源。资源可以声明 service-classprovider-classresource-classplural-nameid-property。使用 <instance><property> 定义静态配置实例。

框架类

<view-class> 注册实现 View 接口的类,用于接收部署、创建、更新和销毁等框架事件。<validator-class> 注册负责属性与实例校验的 Validator。这些类必须包含在软件包类路径中,并能由 View 类加载器正常加载。

软件包契约

View 软件包是一个 JAR。view.xml 位于软件包根目录;客户端资源和服务器类从根目录提供,依赖的 Java 库位于 WEB-INF/lib。Ambari 会提取并提供每个已部署的 View 版本,并通过 REST API 创建配置实例。

view.jar
|
|- view.xml
|- index.html
|_ WEB-INF/lib/*.jar

当 View 版本部署,或实例被创建、更新和销毁时,框架会调用相应的生命周期回调。回调实现必须保持幂等,且不能假设部署或管理操作期间一定存在浏览器会话。