Tag extensions are incredibly helpful to JSP developers. They allow you to create portable and reusable components that naturally fit into the structure of a JSP. In most cases, using tag extensions results in more flexible, easier-to-understand code.
The JSP 2.0 specification has made it much easier to build your own custom tags. While maintaining backward compatibility with JSP 1.2, it introduced the Simple Tag extensions, which greatly simplify the development and deployment of custom tags. The SimpleTag interface and its companion SimpleTagSupport reduce the complexity of writing custom tags in Java. With tag files, Web developers can author tag extensions without knowing Java. Several other useful features make tag extensions very versatile. For example, through dynamic attributes, tags can now work with an unknown number of attributes of varying classes.