组件的使用

如上所述,Web页面是基于组件构建出来的,那么,Web页面最终的表现形式是什么呢?是一个JSP文件?或者其它的什么文件? 一般而言,我们有两种做法,一是继续延用 JSP 文件作为Web页面的载体;二是用 Facelets 作为Web页面的载体。在这里需要着重强调的是,自 OperaMasks 2.0 版本开始,我们强烈建议使用 Facelets 来进行UI页面的编写,具体原因请参考:Facelets,OperaMasks更好的外衣

组件的使用非常简单,简而言之就是:1) 引入组件所在的命名空间 2) 使用组件。

基于JSP来使用组件如下所示,假设要用到 <w:textField>:

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
	1<%@taglib uri="http://www.apusic.com/jsf/widget" prefix="w"%>
<f:view renderKitId="AJAX">
<w:page title="pageTitle">
	2<w:textField width="100" value="#{myBean.someValue}"></w:textField>
</w:page>
</f:view>
1 引入组件<w:textField>所在的命名空间,用到 taglib 技术
2 使用组件,并设置其属性,用到 taglib 技术

而基于 Facelets 来使用组件如下所示,依然假设要用到<w:textField>

<f:view xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core"
	1xmlns:w="http://www.apusic.com/jsf/widget">
<w:page title="pageTitle">
	2<w:textField width="100" value="#{myBean.someValue}"></w:textField>
</w:page>
</f:view>
1 引入组件<w:textField>所在的命名空间
2 使用组件,并设置其属性

再次重申,我们强烈建议您采用第二种方式(Facelets),下面就让我们来了解一下具体原因。

[上一页] [下一页]