`
zuiyanwangyue
  • 浏览: 167146 次
  • 性别: Icon_minigender_1
  • 来自: 河北
社区版块
存档分类
最新评论

ZK工作原理启动篇(一)DHtmlLayoutServlet的初始化

阅读更多

如果要使用ZK的话在web.xml中做一些配置是肯定少不了的,其中配置DHtmlLayoutServlet就是其中之一,当然现在的J2EE规范提倡使用Filter了,zk也提供了DHtmlLayoutFilter,不过它们完成的功能都是类似的,在此仅以Servlet为例。

<servlet>
	<description>ZK loader for ZUML pages</description>
	<servlet-name>zkLoader</servlet-name>
	<servlet-class>org.zkoss.zk.ui.http.DHtmlLayoutServlet</servlet-class>
	<init-param>
		<param-name>update-uri</param-name>
		<param-value>/zkau</param-value>
	</init-param>
	<init-param>
		<param-name>log-level</param-name>
		<param-value>DEBUG</param-value>
	</init-param>
	<load-on-startup>1</load-on-startup>
</servlet>

对上述配置这里不做任何说明,但是有一点需要指出,就是上面的配置中指定这个servlet的启动参数是1,即在Web容器启动时就会进行初始化,我们关心的是DHtmlLayoutServlet在初始化时都做了哪些工作,这对我们了解zk的工作原理有好处。

通过阅读源码可以知道DHtmlLayoutServlet的实例有两个重要的私有属性,它们的类型分别是ServletContext与WebManager,初始化的任务除了初始化这两个属性外还要解析日志级别(log-level)、是否压缩输出(compress)以及更新URI(update-uri)参数,这些参数是在配置servlet时指定的,其中的updateURI还会被用于创建WebManager实例。

_webman = new WebManager(_ctx, updateURI);
_ctx.setAttribute(ATTR_LAYOUT_SERVLET, this); 

注意:在一个web应用中只会有一个DHtmlLayoutServlet的实例存在。

分享到:
评论

相关推荐

    zk 配置的web.xml

    &lt;servlet-class&gt;org.zkoss.zk.ui.http.DHtmlLayoutServlet&lt;/servlet-class&gt; &lt;!-- 必须指定更新引擎(DHtmlUpdateServlet)的URI,并且它必须和更新引擎的中设置的内容相同 --&gt; &lt;param-name&gt;update-uri ...

    zookeeper工作原理 小总结.doc

    ### ZooKeeper工作原理小结 #### 一、ZooKeeper基本概念 **1.1 角色** 在ZooKeeper中,服务器节点被称为Server,它主要有以下几种角色: - **Follower**:处理客户端非写请求,参与Leader选举投票过程。 - **...

    12.2.2 zk中zab的工作原理.md

    12.2.2 zk中zab的工作原理

    Mycat ZK配置文件详解

    在Mycat的安装包中,有一个名为`zk-config.bat/sh`的工具,这个工具的作用是从`conf/zk-default.txt`配置文件中加载ZK路径到ZK-Server中,完成ZK的初始化配置。初始化完成后,Mycat-Eye和负载均衡器(LB)就可以通过ZK...

    ZK安装 ZK入门 开发 讲解 共3个pdf

    这份文档将带你逐步了解ZK的基本概念和工作原理,包括ZK组件的使用、事件处理机制、数据绑定以及Ajax通信等。通过快速启动示例,你可以快速学会如何创建一个简单的ZK应用,并且理解ZK如何简化Web前端开发。 最后,...

    ZK分布式一致性原理与实践

    《ZK分布式一致性原理与实践》是一本深入探讨分布式一致性解决方案的著作,主要围绕PAXOS算法和Zookeeper(ZK)系统展开。在分布式计算领域,一致性是保证系统可靠性和正确性的关键因素,而Zookeeper作为Apache软件...

    hbase zk异常启动不了.docx

    可能需要清除HBase的Master和RegionServer的内存状态,并重新初始化它们。这通常涉及停止HBase服务,清理HBase的临时目录(例如`/hbase/hbase.id`和`/hbase/.logs`),然后重启HBase服务。重启顺序通常是先ZooKeeper...

    zk 6 学习资料

    这本书籍可能涵盖了ZK 6的基础知识,包括ZK的工作原理、基本组件的使用、事件处理机制以及数据绑定等,适合初学者入门。 通过这些文档,无论是初学者还是有经验的开发者,都能系统地学习和提升ZK 6的技能。了解并...

    ZK简明教程.doc

    在web.xml中配置ZK的servlet和监听器,主要是`&lt;listener&gt;`和`&lt;servlet&gt;`元素,它们分别是用于会话销毁时的清理工作和加载ZUML页面的DHtmlLayoutServlet。初始化参数`&lt;init-param&gt;`用于设置更新URI。 通过这个简明...

    zk整合bootstrap

    描述中的链接指向了一篇CSDN博客文章,虽然具体内容无法直接引用,但根据标题和常见整合步骤,我们可以推断出整合ZK和Bootstrap的几个关键知识点: 1. **ZK组件与Bootstrap样式**:ZK组件可以通过设置CSS类来应用...

    zk主题生成器

    该工具的工作原理可能包括以下步骤: 1. **参数配置**:用户可以通过图形用户界面(GUI)选择和调整各种视觉元素的样式,如颜色、字体、布局等。这些参数可能是预设的,也可以自定义,涵盖了组件的背景色、边框、...

    ZK框架开发手册

    ZK框架是一款用于Web开发的开源富客户端框架,它基于Java语言开发,并能够运行在服务器端。ZK框架允许开发者利用XUL(XML用户界面语言),通过简单的标记和脚本来创建复杂的Web界面。 首先,ZK框架的最新版本为...

    启动zk的脚本.sh

    集群启动zk的脚本,只需要改集群参数就可以了集群启动zk的脚本,只需要改集群参数就可以了集群启动zk的脚本,只需要改集群参数就可以了

    LCM12832ZK 字库图形点阵驱动程序

    1. 初始化:在使用LCM12832ZK之前,驱动程序会进行必要的初始化操作,如设置时钟频率、数据传输模式和电源管理等,确保模块能够正确工作。 2. 显示控制:驱动程序能够发送指令来清屏、定位光标、设置背景色和前景色...

    ZK Spreadsheet(3-3)

    标题“ZK Spreadsheet(3-3)”暗示我们正在讨论的是关于ZK Spreadsheet的一个特定部分,可能是教程或更新的第三部分。"zk.part3.rar(3-3)"的描述可能是一个压缩文件,包含了该系列内容的第三个部分,可能是文档、...

    ZK资料学习zk框架的助手

    学习ZK的过程中,你将了解到如何配置和启动ZK集群,理解ZK的数据模型和API,以及如何利用ZK实现分布式锁、队列、选举等高级功能。文档《ZK_学习总结100207.doc》可能涵盖了这些内容的详细讲解,包括ZK的安装部署、...

Global site tag (gtag.js) - Google Analytics