springmvc对angularjs的路由templateurl引用html页面的问题

就是不着调 发布于 2014/10/11 07:57
阅读 2K+
收藏 2

最近在使用angular做东西,后台想做成单页面,遇到个问题.view层想全部使用html,前后台全部json传递数据.

html页面全部是在WEB-INF下面 .路由配置大概就是这样.


$stateProvider.state('program', {
     url:'/program',
     templateUrl: 'program/program.html',
     controller: 'programController'
})

angular解析的前台链接是这样的:localhost/admin#/program  点击链接时,angular会加载program目录下的program.html 到div中.这个时候就会出现404错误.因为html页面在WEB-INF下面是受保护的,无法直接访问到 ,springmvc拦截的是"/" 此时貌似就无法加载到program.html.

当然放在WEB-INF外面, webapp下面是可以的,但是这样好像不安全吧.


加载中
0
Steve
Steve
更改默认的spring的resolver的处理的bean就可以了,给你个示范:

@Bean(name = "urlBasedViewResolver")
public UrlBasedViewResolver getUrlBasedViewResolver() {
    UrlBasedViewResolver resolver = new UrlBasedViewResolver();
     resolver.setPrefix("/WEB-INF/jsps/");
    resolver.setSuffix(".jsp");
    resolver.setViewClass(JstlView.class);
    return resolver;
}

返回顶部
顶部