2009-10-28 2 views
2

просто задавался вопросом, есть ли способ получить доступ к методу из моего класса без создания пользовательского taglib.Доступ к методу из JSTL

Пример У меня есть класс, который предоставляет 4 метода: hasDisplay(), hasCreate(), hasDelete() и hasEdit() - все они просто возвращают логическое значение.

С моей JSP Я просто хочу

<c:if test="{ar.hasEdit}"></c:if> 

Но это работает только с методами получения и установок, я прав?

+0

Я решил проблему красоты, установив пользовательский tld и определяя функцию. Работает как шарм и то, что мне нужно. :) – onigunn

ответ

6

Если вы не хотите писать свои собственные теги, вы можете предоставить декоратор для объекта, который предоставляет интерфейс «beanish». Таким образом, вы завершаете hasedit() с помощью isHasEdit(), так что cou может сохранить ваш jsps в чистоте и по-прежнему использовать желаемый синтаксис, но вы получите «грязные» обертки.

Я бы выбрал пользовательский taglib. Это не так сложно.

+0

Было бы здорово, если бы вы могли писать собственные теги на собственном языке сценариев. Tagfiles в порядке до точки, но ограничены. – skaffman

+0

Ну, я пишу простые теги с тегами JSP и сложными в Java. Работа очень хороша. Я думаю, что можно писать теги на любом jvm-языке. –

1

Правильно, JSP EL может получить доступ только к свойствам бобов. Для чего-то еще нужен специальный taglib. Это не достаточно хорошо, но вот оно.

Смежные вопросы