Я пытаюсь научиться использовать веб-сокеты. У меня есть файл с именем WebSocketClient.js, который я пытаюсь импортировать с тегом script
в моем файле .jsp. Вот JSP:
<!DOCTYPE html>
<html>
<head>
<title>Insert title here</title>
<link rel="stylesheet" href="css/styles.css">
</head>
<body>
<h4>${roomHost}'s room</h4>
<ul id="chat"></ul>
<form method="post" action="chat/${roomHost}" enctype="application/x-www-form-urlencoded">
<input type="text" name="message">
<input type="submit" value="Send">
</form>
<script type="text/javascript" src="js/WebSocketClient.js"></script>
</body>
</html>
Когда я загружаю страницу в Chrome или Firefox, я получаю сообщение об ошибке Uncaught SyntaxError: Unexpected token <
, и когда я захожу в DevTools и просматриваю источники, я вижу, что загруженный файл WebSocketClient.js является просто копией Файл .jsp, из которого он загружается, и атрибут запроса roomHost
заменяется путем к файлу javascript:
Это так странно, я никогда не сталкивался с этим раньше, и я не могу найти ничего об этом в Интернете. WTF продолжается ??
- Я пытался добавить
<%@ page language="java" contentType="text/html;
charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
в верхней части JSP
- Я пытался изменить
<!doctype>
на <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- Я пытался полностью удалить
<!doctype>
- Я пытался переместить тег
<script>
в <head>
- Я пробовал разные пути в атрибуте
src
- Я попытался переместить файл в другую папку и загрузить его оттуда
- Я пытался изменить имя файла
- Я попытался импортировать другой файл js, и произошло то же самое (содержимое загруженного файла js было просто копией файла .jsp)
Я знаю, что файл js не проблема, потому что я могу загрузить его просто с index.jsp
(вместо room.jsp
). Я разрабатывал веб-приложения на Java раньше, и у меня никогда не было этой проблемы, я не могу понять, что ее вызывает.