Мой сервер использует Tomcat 7, HttpServlet и JSP для создания html-страниц.Некоторые процессы удаляют первое появление обратной косой черты в JSP-файле. Что бы это было?
Я загрузил файлы javascript на веб-страницу с помощью метода <script src="source.js" />
.
Теперь, из-за изменений требований, я встраиваю javascripts в JSP-файл напрямую. Таким образом, javascripts и html загружаются одним HTTP-вызовом.
Все работает как ожидалось, за исключением того, что есть эта проблема. Проблема здесь в том, что первое появление \
обратных косых черт в JSP-файле удаляется при загрузке веб-страницы.
Например,
<script>${string}.match(/\$/)</script>
станет
<script>${string}.match(/$/)</script>
Эти две регулярные выражения имеют совершенно разные значения. Это приводит к тому, что многие из регулярных выражений не работают должным образом.
Когда файл JavaScript загружался с использованием <script src="" />
, этого не произошло, поскольку браузер напрямую загружает JS-файл с сервера. Однако, как только я встроил javascripts в JSP, первое появление \
удаляется.
Я не знаком с Tomcat & Sevlet & JSP, поэтому я не уверен, какой из этих трех компонентов вызывает эту проблему. Есть ли конфигурация, которую мне нужно установить, чтобы предотвратить удаление tomcat \
из JSP-файла при загрузке?
Если я не могу предотвратить удаление Tomcat/JSP \
, я мог бы добавить логику, чтобы фактически избежать \
, чтобы она была успешно загружена в браузере. Если это так, где я могу найти весь список символов, которые tomcat/JSP удаляет/удаляет?
Что заставляет вас думать, что это происходит? – Pointy
Кроме того, '$ {string}' является синтаксической ошибкой JavaScript в любом случае. – Pointy
Похоже, что-то не так в том, что происходит в процессе внедрения. Парсер Html не изменит ваш синтаксис скрипта – charlietfl