Я работаю на Mac более 8 лет и хотел дать Windows 10 еще один шанс.Поэтому я зарегистрировал все свои проекты в GitHub на Mac, а затем синхронизировал проекты на моем компьютере с Windows 10.
Как только я запустил проект в NetBeans и перешел на определенные страницы JSP, я получил следующую ошибку:.
18 мая 2018 г. 09: 46: 24.335 SEVERE [http-nio-8084-exec-27] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service () для сервлета[jsp] в контексте с путем [/ Project] выдал исключение [/WEB-INF/tags/config.tag (строка: 46, столбец: 34) для атрибута «не завершен должным образом] с основной причиной org.apache.jasper.JasperException: /WEB-INF/tags/config.tag (строка: 46, столбец: 34) атрибут для "не завершен должным образом
В указанной строке у меня есть следующее ...
<c:when test="${storageType == \"boolean\"}">
И хотя я мог бы изменить его на следующее ...
<c:when test="${storageType == 'boolean'}">
У меня есть много мест в моих тегах и JSP, где я избежал цитаты ("), я надеваюне понимаю, почему я должен изменить это. Мой проект работает в производстве как есть, поэтому я нехочу без необходимости трогать файлы JSP / tag.
На моем Mac, который использует JDK 1.8.0_102, он работает нормально
На моем Windows 10, который использует JDK 1.8.0_172, это не такработает
Я использую NetBeans с вышеупомянутыми JDK.
Tomcat в Windows = 8.0.27.0
Tomcat в Mac = 8.0.23.0
ОБНОВЛЕНИЕ
Это работает ..
<c:if test="${key == 'testing'}">
<div>TESTING-A</div>
</c:if>
Это НЕ работает ...
<c:if test="${key == \"testing\"}">
<div>TESTING-A</div>
</c:if>
Последнее вызывает ошибку на runtime
[/ WEB-INF / tags / config.tag (строка: 27, столбец: 12) атрибут для «неправильно завершен] с первопричиной org.apache.jasper.JasperException:/WEB-INF/tags/config.tag (строка: 27, столбец: 12) атрибут для "неправильно завершен.
Я отмечаю, что столбец 12 - это первая цитата…
Чтобы было ясно, выход из выражения JSTL, кажется, является основной причиной - но почему он не работает на более новом Tomcat?