我正在用Spring开发一个网站,并试图提供非.jsp文件的资源(例如.html)。
现在,我已经注释掉了servlet配置的这一部分
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/jsp/" p:suffix=".jsp" />
并尝试从控制器返回资源的完整路径。
@Controller
public class LandingPageController {
protected static Logger logger = Logger.getLogger(LandingPageController.class);
@RequestMapping({"/","/home"})
public String showHomePage(Map<String, Object> model) {
return "/WEB-INF/jsp/index.html";
}
}
index.html文件存在于该文件夹中。
注意:当我将index.html更改为index.jsp时,我的服务器现在可以正确地为页面提供服务。
谢谢。
发布于 2013-03-18 22:56:13
您仍然可以继续使用相同的视图解析器,但将后缀设置为空。
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"
p:prefix="/WEB-INF/jsp/" p:suffix="" />
现在,您的代码可以选择返回index.html或index.jsp,如以下示例所示:
@RequestMapping(value="jsp", method = RequestMethod.GET )
public String startJsp(){
return "/test.jsp";
}
@RequestMapping(value="html", method = RequestMethod.GET )
public String startHtml(){
return "/test.html";
}
发布于 2017-04-24 04:47:19
html文件的Java配置(在本例中为index.html):
@Configuration
@EnableWebMvc
public class DispatcherConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/index.html").addResourceLocations("/index.html");
}
}
发布于 2013-03-18 22:37:25
相应地更改p:suffix=".jsp“值,否则我们可以开发自定义视图解析器
https://stackoverflow.com/questions/15479213
复制相似问题