JSF 2.0: Custom Component
Paulus Ganesha Aryo Prakoso Saat ini sedang bermain dengan teknologi Java yaitu JSF 2.0. Mudah mengerjakan form dengan cepat karena ada beberapa component yang sudah ada. Kalau Anda masih pemula, bisa belajar JSF 2.0 hello world example.
Component yang untuk menampilkan teks.
<h:outputText value="Hai Paulus." />Kalau ingin membuat custom component seperti di bawah:
<cu:custom say="Hai Paulus." />Iya bisa membuat component yang diinginkan kita.
1. Load custom-taglib.xml di web.xml
<context-param> <param-name>javax.faces.FACELETS_LIBRARIES</param-name> <param-value>/WEB-INF/taglib/custom-taglib.xml</param-value> </context-param>
2. Membuat tag component di /WEB-INF/taglib/custom-taglib.xml
<?xml version="1.0" encoding="UTF-8"?> <facelet-taglib xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd" version="2.0"> <namespace>http://paganekoso.net/jsf/custom-taglib</namespace> <tag> <tag-name>custom</tag-name> <component> <component-type>mycustom</component-type> </component> <attribute> <description>Put your message</description> <name>say</name> <required>false</required> <type>java.lang.String</type> </attribute> </tag> </facelet-taglib>
3. Membuat class MyCustomComponent.java
@FacesComponent("mycustom") public class MyCustomComponent extends UIComponentBase { @Override public void encodeAll(FacesContext context) throws IOException { ResponseWriter writer = context.getResponseWriter(); String say = (String) getAttributes().get("say"); writer.startElement("h3", this); if (say != null) { writer.writeText(say, "say"); } else { writer.writeText("Hello from a custom JSF UI Component", null); } writer.endElement("h3"); } @Override public String getFamily() { return "custom"; } }
4. Gunakan custom component telah dibuat.
<html xmlns="http://www.w3.org/1999/xhtml" .... xmlns:cu="http://paganekoso.net/jsf/custom-taglib">
<cu:custom say="Selamat datang, Paulus"/>Mudah khan? Kita bisa membuat custom component yang sesukanya.
Baca lain juga:
Posted in Open Source, Programming


November 22nd, 2010 at 4:50 am
JSF 2.0 jauh lebih mudah and FUN dibandingkan dengan JSF 1.2. Untuk fancy UI, coba extension http://www.primefaces.org/
November 23rd, 2010 at 12:26 pm
Iya betul saat ini sering gunakan primefaces …