как подключить css к файлам JSP, хранящимся в папке WEB-INF? В WebSphere/ССП
Я использую ibm websphere и создаю динамический веб-проект. Все мои JSP
файлы находятся в моей папке WEB-INF, и я использую сопоставление сервлетов в моем чтобы сделать их доступными. До сих пор это работало нормально. однако у меня проблема с моим CSS. как всегда, мой CSS
файл находится в WebContent
в папке с именем css. вот моя ссылка для моего jsp
<link rel="stylesheet" href = "css/styles.css">
мне не повезло получить мой css, чтобы показать...
что я упускаю?
2 ответов
относительные URL-адреса в сгенерированном выводе HTML интерпретируются браузером относительно URL-адреса запроса (как вы видите в адресной строке браузера), а не их физического местоположения в дисковой файловой системе сервера. Это именно веб-браузер, который должен загрузить их по HTTP-запросу, это не веб-сервер, который должен каким-то образом включить их с диска.
один из способов-использовать относительный путь к домену для этих ресурсов, т. е. начать с /
. Вы можете использовать ${pageContext.request.contextPath}
чтобы динамически встроить контекстный путь текущего webapp.
<link rel="stylesheet" href="${pageContext.request.contextPath}/css/styles.css">
это будет в конечном итоге в сгенерированном выводе HTML следующим образом:
<link rel="stylesheet" href="/yourContextPath/css/styles.css">
таким образом браузер сможет загрузить их правильно.
Читайте также:
Я думаю, вам нужно увидеть его с точки зрения браузера, как это URL-адрес страницы, путь контекста и текущий путь.
Если ваш путь контекста приложения, например, "myApp", то вы можете сделать что-то вроде этого, чтобы заставить его работать:
<link rel="stylesheet" href = "/myApp/css/styles.css">
Если вы хотите сделать его относительным, чтобы он не зависел от пути контекста, то если Ваш url выглядит как http://localhost:8080/myApp/myservlet/file.jsp
тогда ваша ссылка будет будь
<link rel="stylesheet" href = "../css/styles.css">
Firebug или консоль chrome могут быть действительно полезны, чтобы понять, что браузер пытается получить.
надеюсь, что это помогает!