#html #css #jsp #jakarta-ee
#HTML #css #jsp #джакарта-ee
Вопрос:
У меня было две ветки на github. Второй был для фронтальной интеграции и работал отлично, пока я не объединил его с мастером.
Мой файл index.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ex" uri="/WEB-INF/custom.tld" %>
<html>
<jsp:include page="pages/headFragment.jsp"/>
<body>
<body>
...
</body>
</html>
Файл headFragment.jsp является:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<head>
<!-- Animate.css -->
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/css/animate.css">
<!-- Icomoon Icon Fonts-->
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/css/icomoon.css">
<!-- Simple Line Icons -->
<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/css/simple-line-icons.css">
</head>
В консоли браузера у меня несколько ошибок:
Ошибка синтаксиса: ожидаемое выражение, получено ‘<‘
, но они связаны с файлами css, которые не являются файлами css. Мой animate.css интерпретируется браузером как html-файл с телом всей страницы. Ссылки интерпретируются нормально, но их тело — нет.
Я думаю, что это проблема со связыванием таблиц стилей css, но я погуглил и перепробовал множество вариантов, и ничего не сработало. Интересная часть заключается в том, что на этапе предварительной интеграции он обычно работает, но после слияния он не включает файлы css. Также есть проблема с файлами js, но сначала я попытался исправить css…
И, кстати, я работаю над Intellij 2016.2.4
Также мой pom.xml файл:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>webpage</groupId>
<artifactId>web_page</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warSourceDirectory>web</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
<packaging>war</packaging>
<dependencies>
<!-- https://mvnrepository.com/artifact/postgresql/postgresql -->
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901.jdbc4</version>
</dependency>
<!-- http://repo1.maven.org/maven -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
Ответ №1:
Для кого это может касаться.
Проблема возникла из-за глобального пути приветствия ‘/’ к загруженному сервлету. Изменение этого пути, например, на ‘/yolo’, разрешает все конфликты.