Как мы можем использовать существующую функциональность taglib в наших пользовательских тегах?

1

Хотя я не новичок в создании taglib, но я смущен тем, как мы можем использовать существующее определение тега в моем собственном теге?

Я пишу taglib для инкапсуляции фрагмента кода jsp, который регулярно используется в jsp файлах. Но этот фрагмент содержит другие теги расположений, например , и т.д.

Я должен инкапсулировать все это в одном пользовательского тега.

Возможно ли, что я могу использовать классы taglib struts напрямую или что еще?

Пожалуйста, предложите, как я должен действовать.

Теги:
jsp
taglib

1 ответ

0

Это довольно прямолинейно. Создайте фрагменты кода JSP, которые вы хотите в своем taglib. Храните их где-нибудь (как правило, это WEB-INF\tags, но могут быть \templates). Имена файлов должны заканчиваться на.tag. Расскажите компилятору JSP, где находятся фрагменты:

<%@taglib prefix="template" tagdir="/WEB-INF/tags" %>

и использовать их

<template:_name_of_template_file_without_extension_/>

где вы просто ссылаетесь на файл. Существует альтернативный синтаксис для шаблона, но тогда вы не создаете taglib.

<template:insert template = "String" [ base = "String" ] [ id = "" ] [ locale = "" ] > 
...Body Content...
</template:insert>

Извините, если вы хотите создать свой собственный taglib

<%@taglib uri="_filename_.tld" prefix="_lib_prefix_" %>

затем используйте его

<_lib_prefix_:_lib_tag_ _WHATEVER_/>

Наконец, вы можете использовать существующий taglib в пользовательских тегах

  • 0
    Я предполагаю, что вы просите меня создать собственный файл тегов.
  • 0
    Ну, я пытался показать, что есть несколько способов сделать это; это действительно зависит от вашей цели. 1) файл пользовательских тегов, 2) шаблон или 3) действительно ваш собственный taglib. Какова твоя цель?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню