Java 使用SpringMVC集成测试时,SpringSecurity标记库不可见
我正在尝试使用MockMvc类进行一些“集成”测试 我使用:Java 使用SpringMVC集成测试时,SpringSecurity标记库不可见,java,maven,spring-security,spring-test-mvc,Java,Maven,Spring Security,Spring Test Mvc,我正在尝试使用MockMvc类进行一些“集成”测试 我使用: this.mockMvc.perform( get("/admin")) .andExpect(status().isOk()) .andDo(print()); 但负责生成页面的freemarker使用的是安全标记库 <#assign security=JspTaglibs["http://www.springframe
this.mockMvc.perform(
get("/admin"))
.andExpect(status().isOk())
.andDo(print());
但负责生成页面的freemarker使用的是安全标记库
<#assign security=JspTaglibs["http://www.springframework.org/security/tags"] />
应用程序本身正在工作,但我必须使用mvn tomcat:run war而不是mvn tomcat:run才能将taglib安装到位。我必须复制
~/.m2/repository/org/springframework/security/spring-security-taglibs/3.2.0.RELEASE/spring-security-taglibs-3.2.0.RELEASE.jar
到我的WEB-INF/lib文件夹。然后,我得到了另一个关于missiong'Tag'类的问题,所以我不得不补充
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
javax.servlet.jsp
jsp api
2.2
复制粘贴该jar文件似乎是一个肮脏的解决方法。。如果有更好的解决办法,请告诉我
编辑
有一种使用mvn tomcat7运行它的方法:运行而不是运行war,这样就可以在不重新启动服务器的情况下加载标记库并刷新模板文件。加上
<jarScanAllDirectoriescontextReloadable>true</jarScanAllDirectoriescontextReloadable>
<contextReloadable>true</contextReloadable>
true
真的
到pom.xml中的tomcat7 maven插件
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
<jarScanAllDirectoriescontextReloadable>true</jarScanAllDirectoriescontextReloadable>
<contextReloadable>true</contextReloadable>