知识大全 试着开始开发基于JSF2的Html5组件包
Posted 知
篇首语:没有一贯的蔑视,又怎能不断地欣赏呢?本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 试着开始开发基于JSF2的Html5组件包相关的知识,希望对你有一定的参考价值。
试着开始开发基于JSF2的Html5组件包 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
现在许多浏览器都开始支持 然而当前的ide编辑环境还不能识别 的标签 在工作中 有应用 的需求 想通过开发基于JSF 的Html 组件包 来满足这样的现实需求 实现可复用的 表现组件
开始试写 第一个标记<h :doctype/>
组件包结构如下
组件的类文件
Java代码
package l ;
import ponent UIComponentBase;
/**
* 开始于
* 的DOCTYPE的文档类型声明 一个简单的 标记封装
* 最后修改于
* @author 普特工作室
* @version
*/
public class Html Doctype extends UIComponentBase
/**
* 使用组件的类名作为 返回组件的家族标识
* @return
*/
@Override
public String getFamily()
return Html Doctype class getName();
组件的标记处理类
Java代码
package putl ;
import l Html Doctype;
import putesol Html DoctypeRenderer;
import javax faces webapp UIComponentELTag;
/**
* 开始于
* 组件的标志处理器类 组件的标记类
* 衔接代码 让这个组件能在JSP页面上下文中执行 从而钩到其它的相关类
* 最后修改于
* @author 普特工作室
* @version
*/
public class Html DoctypeTag extends UIComponentELTag
/**
*
* 直接使用类的全路径名 作为组件的类型名
* 此处是衔接代码 通过此衔接代码
* 根据获得的组件名 在faces config xml中 找到对应的组件类
* 然后执行组件的处理逻辑
* @return
*/
@Override
public String getComponentType()
String pontentType = Html Doctype class getName();
return pontentType;
/**
* 直接使用类的全路径名 作为组件的渲染器类型名
* 此处是衔接代码 通过此衔接代码
* 根据获得的渲染器名 在faces config xml中 找到对应的渲染器类
* 然后执行组件的渲染处理
* @return
*/
@Override
public String getRendererType()
String rendererType = Html DoctypeRenderer class getName();
return rendererType;
组件渲染器类
Java代码
package putesol ;
import java io IOException;
import ponent UIComponent;
import ntext FacesContext;
import ntext ResponseWriter;
import javax faces render Renderer;
/**
* 开始于
* HTML 的文档类型渲染器
* 最后修改于
* @author 普特工作室
* @version
*/
public class Html DoctypeRenderer extends Renderer
/**
* 编码组件 渲染成Html代码
* @param context
* @param ponent
* @throws IOException
*/
@Override
public void encodeBegin(FacesContext context UIComponent ponent) throws IOException
//从faces上下文环境中获得响应书写器
ResponseWriter writer = context getResponseWriter();
//直接把字符串写出 不进行字符转义处理
writer write( <!DOCTYPE HTML> );
标记库文件
Xml代码
<?xml version= encoding= UTF ?>
<taglib
version=
xmlns=
xmlns:xsi= instance
xsi:schemaLocation= jsptaglibrary_ _ xsd >
<description>用于JSF 的 通用标记的JSF封装</description>
<tlib version> </tlib version>
<short name>jsf_ </short name>
<uri>_ </uri>
<tag>
<description>Html 的文档类型声明封装</description>
<name>doctype</name>
<tag class>
putl Html DoctypeTag
</tag class>
</tag>
</taglib>
组件库文件
Java代码
<?xml version= encoding= UTF ?>
<!
Document : faces config xml
Created on : 年 月 日 下午 :
Author : 普特工作室
Description: JSF组件库的组件注册
>
<faces config
xmlns=
xmlns:xsi= instance
xsi:schemaLocation= facesconfig_ _ xsd
version= >
<ponent>
<description>Html 的文档类型声明DOCTYPE</description>
<ponent type>
l Html Doctype
</ponent type>
<ponent class>
l Html Doctype
</ponent class>
</ponent>
<render kit>
<renderer>
<ponent family>
l Html Doctype
</ponent family>
<renderer type>
putesol Html DoctypeRenderer
</renderer type>
<renderer class>
putesol Html DoctypeRenderer
</renderer class>
</renderer>
</render kit>
</faces config>
组件在Jsp文件中使用
Html代码
<%@page contentType= text/ pageEncoding= UTF %>
<%@taglib prefix= f uri= %>
<%@taglib prefix= h uri= %>
<%@taglib prefix= h uri= _ %>
<!DOCTYPE HTML PUBLIC //W C//DTD HTML Transitional//EN
>
<%
This file is an entry point for JavaServer Faces application
%>
<f:view>
<h :doctype/>
<>
<head>
<meta equiv= Content Type content= text/; charset=UTF />
<title>JSP Page</title>
</head>
<body>
<h ><h:outputText value= JavaServer Faces /></h >
</body>
</>
</f:view>
cha138/Article/program/Java/hx/201311/26425相关参考
如果学HTML5前端开发,那么在大学里选什么专业 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如果
基于Delphi的组件设计之概念[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作为组件制
基于Delphi的组件设计之概念[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Delph
基于Delphi的组件设计之概念[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 属性可以有
基于Delphi的组件设计之简单实例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!这是一个可以计数
如何基于Eclipse的组件内使用RIA技术 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 导语
今天进入可开发前的准备阶段在开发项目前要求每位开发小组成员都必须先阅读以下约定严格按以下约定来进行开发 系统框架 ·系统总框架采用SUNJEE框架使用JAVA/XML技术和组件技术基于
空间数据挖掘系统一种新的实现方案 以上几种系统都是用自己开发的或GIS软件开发商提供的GIS平台组件或中间件来实现SDM系统中空间数据管理和分析本文中提出了空间数据挖掘系统一种新的实现方案即以
VB.NET中的组件开发 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!简介组件其实是一段可以重用的
dotnet下开发COM+组件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一问题的提出 最