[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-servlety-chto-vy-znaete-o-napisanii-polzovatelskikh-jsp-tegov":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":16,"progress":17,"seo":18},594,"chto-vy-znaete-o-napisanii-polzovatelskikh-jsp-tegov",13,"servlety","Сервлеты","🖧","Что вы знаете о написании пользовательских JSP тегов","Пользовательский JSP-тег создаётся в три шага: написание Java-класса (Tag Handler), создание TLD-файла с описанием тега и подключение библиотеки на JSP-странице.\n\n### Шаг 1: Tag Handler\n\nКласс наследует `TagSupport` или `SimpleTagSupport` и переопределяет методы обработки:\n\n```java\npublic class HelloTag extends TagSupport {\n    @Override\n    public int doStartTag() throws JspException {\n        try {\n            pageContext.getOut().print(\"Hello World!\");\n        } catch (IOException e) {\n            throw new JspException(e);\n        }\n        return SKIP_BODY; \u002F\u002F не обрабатывать тело тега\n    }\n}\n```\n\n### Шаг 2: TLD-файл\n\n```xml\n\u003Ctag>\n    \u003Cname>hello\u003C\u002Fname>\n    \u003Ctag-class>com.example.HelloTag\u003C\u002Ftag-class>\n    \u003Cbody-content>empty\u003C\u002Fbody-content>\n\u003C\u002Ftag>\n```\n\n### Шаг 3: Использование на JSP\n\n```jsp\n\u003C%@ taglib uri=\"\u002FWEB-INF\u002Fmytags.tld\" prefix=\"my\" %>\n\u003Cmy:hello \u002F>\n```\n\nТег может принимать атрибуты через setter-методы в Tag Handler и иметь тело (`body-content`: `empty`, `scriptless`, `tagdependent`, `JSP`).\n\n> **На собеседовании:** покажите, что знаете все три шага. Tag Handler + TLD + taglib-директива. Для простых случаев проще использовать Tag File (`.tag` файл) — не нужен Java-класс и TLD.","","junior",[15],"servlets",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":23,"featuredSnippetReady":24},"Что вы знаете о написании пользовательских JSP тегов — Gymterview","Пользовательский JSP-тег создаётся в три шага: написание Java-класса (Tag Handler), создание TLD-файла с описанием тега и подключение библиотеки на JSP-странице","Пользовательский JSP-тег создаётся в три шага: написание Java-класса (Tag Handler), создание TLD-файла с описанием тега ",[15,13],"Пользовательский JSP-тег создаётся в три шага: написание Java-класса (Tag Handler), создание TLD-файла с описанием тега и подключение библиотеки на JSP-странице.",true]