Я знаю, что подобные вопросы были заданы раньше, но я все еще не могу заставить это работать.Статическое содержимое - Spring MVC
Я с Spring MVC веб-сайта с дерева файлов, который выглядит следующим образом:
webapp\
resources\
style.css
myimg.png
post.html
Main.html
Мой сервлет устанавливает main.html быть его главную страницу и правильно загружает со стилем и рис I упоминал об использовании этих тегов:
<link rel="stylesheet" type="text/css" href="resources\style.css"
media="screen" />
<img src="resources\myimg.png" style="padding-left: 25px" />
Также я определяю в моей конфигурации (я использую конфигурацию класса):
public class ApiServletConfig extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
}
}
Когда я звоню post.html
из Main.html
файл загружается без стиля и изображения. Не уверен, что еще нужно сделать, чтобы загрузить его правильно.
post.html имеет следующие метки:
<link rel="stylesheet" type="text/css" href="style.css" media="screen" />
<img src="myimg.png" style="padding-left: 25px"/>
Кроме того, я попытался с resources\style.css
и resources\myimg.png
вызов контроллер выглядит следующим образом:
@RequestMapping(value = "/{id}/view", method = RequestMethod.GET, produces = "text/html")
public String getPostByIdHtml(@PathVariable String id) throws IOException {
return "/resources/post.html";
}
main.html имеет ссылку что выглядит следующим образом: http://mysite.com/100/view
Что еще нужно сделать для загрузки css и изображения. Спасибо за помощь!
EDIT: После комментария, что мой web.xml:
<?xml version="1.0" encoding="UTF-8"?>
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd»версия = "3,0"> /Main.html
Не очень интересно, я думаю, у меня есть инициализационные в Java коде, вероятно, более интересное:.
public class WebInit implements WebApplicationInitializer {
@Override
public void onStartup(final ServletContext container) {
final AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
context.register(ApiServletConfig.class);
final ServletRegistration.Dynamic dispatcher = container.addServlet("api-dispatcher",
new DispatcherServlet(context));
dispatcher.setLoadOnStartup(1);
dispatcher.addMapping("/api/*");
}
}
Можете ли вы показать ваш web.xml –
Я редактировал пост. Я не использую конфигурацию в Интернете.xml, но с внедрением 'WebApplicationInitalizer'. Он делает то же самое – Avi
"* Кроме того, я попытался использовать' resources \ style.css' и 'resources \ myimg.png' *. Это просто неправильно. Вы рассматриваете это как локальную файловую систему на диске. – Lion