Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsp 有没有办法限制自定义标记的使用,使其只能在特定标记中使用?_Jsp_Jsp Tags - Fatal编程技术网

Jsp 有没有办法限制自定义标记的使用,使其只能在特定标记中使用?

Jsp 有没有办法限制自定义标记的使用,使其只能在特定标记中使用?,jsp,jsp-tags,Jsp,Jsp Tags,我有一个标签和一个标签。这些是JSP自定义标记。是否有任何方法可以指定标记不能单独使用,并且只能作为标记的子项使用?似乎没有声明性/TLD方法可以做到这一点 JSP 2.0允许您通过扩展类javax.servlet.JSP.tagext.TagLibraryValidator并实现验证消息来实现翻译时转换器 您还可以在运行时通过使用SimpleTag.getParent()方法执行此操作,并在父级类型不正确时引发异常 它可能看起来像这样: public void doTag() { if

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

似乎没有声明性/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.");
}

似乎没有一种声明式/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.");
}

我想这是唯一的办法!我希望有一种方法可以使用自定义XSD指定模式。我想这是唯一的方法!我希望有一种方法可以使用自定义XSD指定模式。