是否有一种方法可以限制自定义标记的使用,使其只能在特定标记中使用?

  • 本文关键字:方法 一种 是否 自定义 jsp jsp-tags
  • 更新时间 :
  • 英文 :


我有一个<filter:filters>标签和一个<filter:filter>标签。这些是JSP自定义标记。是否有任何方法可以指定<filter:filter>标记不能单独使用,并且它只能作为<filter:filters>标记的子标记使用?

似乎没有声明性/TLD的方式来做到这一点。

JSP 2.0允许您通过扩展javax.servlet.jsp.tagext.TagLibraryValidator类并实现验证消息来实现翻译时间转换器。

你也可以在运行时使用SimpleTag.getParent()方法,如果父类不是正确的类型就抛出异常。

它可能看起来像这样:

public void doTag() {
   if (!(getParent() instanceof Filters)) 
      throw new Exception("A filter can only be used inside a filters tag.");
}

相关内容

最新更新