我有一个<filter:filters>
代码和一个<filter:filter>
代码。这些是JSP自定义标记。有没有办法指定<filter:filter>
标记不能单独使用,并且只能用作<filter:filters>
标记的子标记?
答案 0 :(得分:3)
似乎没有声明/ 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.");
}