Java JSPC:jsp:attribute必须是标准或自定义操作的子元素

Java JSPC:jsp:attribute必须是标准或自定义操作的子元素,java,jsp,jsp-tags,Java,Jsp,Jsp Tags,我正在使用Maven在我的webapp中预编译JSP。我使用了很多自定义标记,但其中一个会阻塞Apache的JSP编译器 JSP的相关部分如下所示: <jb:contentChanger containerId="${previewImageContainer}"> <jsp:attribute name="content"> <div id="${previewImageContainer}"> <jsp:include pa

我正在使用Maven在我的webapp中预编译JSP。我使用了很多自定义标记,但其中一个会阻塞Apache的JSP编译器

JSP的相关部分如下所示:

<jb:contentChanger containerId="${previewImageContainer}">
  <jsp:attribute name="content">
    <div id="${previewImageContainer}"> 
      <jsp:include page="../inc/fa_zoom.jsp">
        <jsp:param name="picNUrl" value="${PicNUrl}"/>
       <jsp:param name="picXUrl" value="${largeZoomImgUrl}.jpg"/>  
      </jsp:include>
    </div>
  </jsp:attribute>
  <jsp:body>
     <jb:ajaxPopupLinkMedia href="${mediaURL}" width="660px" height="675px">
       <img src="${morePicPreview}" alt="${product.name}" border="0" style="width:40px; height:40px;"/>
     </jb:ajaxPopupLinkMedia>
  </jsp:body>
</jb:contentChanger>

JSPC抱怨说,
jsp:attribute必须是标准或自定义操作的子元素
。但是查看我的代码
jsp:attribute
是我的自定义操作
jb:contentChanger
的一个子元素

如果我将JSP复制到正在运行的Tomcat中,那么它是否能正常工作也是值得怀疑的。没有抱怨


我做错了什么?

你确定你已经包含了jb:contentChanger的定义吗?

我实际上找到了这个问题的答案:在我的pom.xml中,我将taglib的jar范围设置为“runtime”,这是真的,但当然也导致了我遇到的编译时错误。