我有一个春季MVC应用程序我正试图用eclipse和jetty运行。所有注释,没有web.xml。在这里尝试了一半的答案后,我仍然无法让我的CSS工作。
我的css就在这里
src/main/webapp/resources/css/main.css
在我的JSP中我有
<link rel="stylesheet" type="text/css" href="<c:url value="/resources/css/main.css" />">
哪个看起来正确,解析为
<link rel="stylesheet" type="text/css" href="/resources/css/main.css">
我已经尝试将此添加到我的applicationContext.xml
<mvc:resources mapping="/resources/**" location="/resources/" />
仍然没有找到css。
有什么想法吗?
修改
我的初始化
public class WebInitializer implements WebApplicationInitializer {
private final Logger log = Logger.getLogger(WebInitializer.class);
public void onStartup(ServletContext container) {
log.info("Starting web app");
// Create the 'root' Spring application context
AnnotationConfigWebApplicationContext rootContext = new AnnotationConfigWebApplicationContext();
rootContext.register(AppConfig.class);
container.addListener(new ContextLoaderListener(rootContext));
// Create the dispatcher servlet's Spring application context
AnnotationConfigWebApplicationContext dispatcherContext = new AnnotationConfigWebApplicationContext();
dispatcherContext.register(MvcConfig.class);
// Register and map the dispatcher servlet
ServletRegistration.Dynamic dispatcher = container.addServlet("dispatcher", new DispatcherServlet(dispatcherContext));
dispatcher.setLoadOnStartup(1);
dispatcher.addMapping("/");
}
}
答案 0 :(得分:0)
看起来您无法将XML和程序化配置结合起来。
我找到了this链接。在我的配置类中输入后,它工作了......
public class WebConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/public-resources/");
}
}