// render a submit button
ResponseWriter writer = context.getResponseWriter();
writer.startElement("input", component);
writer.writeAttribute("type", "Submit", null);
writer.writeAttribute("name", clientId, "clientId");
writer.writeAttribute("value", "Click Me!", null);
writer.endElement("input");
}
private void encodeOutputField(FacesContext context,UIComponent component) throws IOException {
ResponseWriter writer = context.getResponseWriter();
String hellomsg = (String) component.getAttributes().get("value");
writer.startElement("p", component);
writer.writeText("You entered: " + hellomsg, null);
writer.endElement("p");
}
}
UIComponent的代码,HtmlInput类仅仅继承了UIInput类,所以自然拥有了getFamily,get/setSubmittedValue方法的实现。
package com.freebird.component;
import javax.faces.component.UIInput;
/*
* Describe class HtmlInput here.
*
*
* Created: Wed Dec 29 11:43:18 2010
*
* @author chenshumailto:chenshu@csdesktop">chenshu
* @version 1.0
/
public class HtmlInput extends UIInput {
}
现在看一下两个配置文件:
faces-config.xml中添加
helloworld.taglib.xml中添加
在web应用程序中使用该tag很简单,仅仅是一行: