我使用spring security将安全性集成到我的MVC应用程序中。我的web.xml片段如下:
...
<jsp-config>
<taglib>
<taglib-uri>/spring</taglib-uri>
<taglib-location>/WEB-INF/tld/spring-form.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>
当我在Spring安全参考中阅读/搜索时,我在页面末尾找到this page,与taglib相关。现在在我现有的MVC应用程序中,我已经有了.tld文件,如上面的代码片段所示。我应该为安全性添加另一个.tld文件,例如security.tld并在web.xml中定义它吗?我该怎么用?像这样:
<taglib-location>
/WEB-INF/tld/spring-form.tld
/WEB-INF/tld/security.tld
</taglib-location>
或者像这样:
<taglib>
<taglib-uri>/spring</taglib-uri>
<taglib-location>/WEB-INF/tld/spring-form.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/security</taglib-uri>
<taglib-location>/WEB-INF/tld/security.tld</taglib-location>
</taglib>
请帮忙。谢谢
* 编辑:* 我使用的是spring 2.5.6和security 2.0.4
答案 0 :(得分:2)
一种选择是将声明移动到一个公共JSP(如果使用JSP),如下所示:
<%@ taglib uri="/WEB-INF/tld/spring-form.tld" prefix="spring" %>
<%@ taglib uri="/WEB-INF/tld/security.tld" prefix="security" %>
然后您可以在任何想要使用其中一个标记的JSP中引用该JSP,如下所示(例如,如果您使用Tiles或Sitemesh,则在模板中运行良好)
<%@ include file="/jsp/common/taglibs.jsp" %>