Tạo và sử dụng Custom Tag trong JSP thông qua Tag interface


JSP Custom Tag là một khái niệm trong JSP cho phép chúng ta tái sử dụng lại code dưới hình thức và các sử dụng như các ngôn ngữ đánh dâu (JSP, HTML…)

Trong bài này tôi hướng dẫn các bạn tạo custom tag thông qua việc vài đặt Interface Tag ngoài ra bạn có thể thừ kế lại từ lớp TagSupport để tiết kiệm thời gian hơn

1. Tạo TagHandler Class
2. Đăng ký sử dụng custom tag với Tomcat
3. Nhúng thẻ mới của bạn vào trang JSP

1. Tạo TagHandler
package tag;
import java.io.IOException;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.Tag;
public class TagInterfaceDemo implements Tag {
private String fullName=”Ngô Tường Dân”;
Tag parent;
PageContext pageContext;
/** Creates a new instance of TagInterfaceDemo */
public TagInterfaceDemo() {
}

public void setPageContext(PageContext pc) {
pageContext = pc;
}

public void setParent(Tag t) {
parent = t;
}

public Tag getParent() {
return parent;
}

public int doStartTag() throws JspException {
try {
pageContext.getOut().print(“Hello, this is Tag implement demo !”);
pageContext.getOut().print(“
“+fullName);
} catch (IOException ex) {
ex.printStackTrace();
}
return SKIP_BODY;
//return EVAL_BODY_INCLUDE; goi ket qua này nếu bạn muốn tạo ra thẻ có thể xử dụng phần thân
}

public int doEndTag() throws JspException {
return SKIP_PAGE;
}

public void release() {
}

public void setFullName(String fullName) {
this.fullName = fullName;
}
}

2. Đăng ký với webserver
Bổ sung thẻ sao vào tập tin mô ta thu viện thể của bạn

TagInterfaceDemo
tag.TagInterfaceDemo
empty

fullName
true
String

3. Nhúng vào trang JSP
Bổ sung thẻ này vào đầu trang jsp

Sau đó bạn gọi nó lại từ trang JSP như sau

Vậy là xong ! chúc bạn may mắn

Có thể download source ở đây

Thêm một số ví dụ nữa về JSP bạn có thể xem ở đây

Advertisements

One thought on “Tạo và sử dụng Custom Tag trong JSP thông qua Tag interface

Phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s