Когда я использую <% включает %> директивы в JSP, есть ли какой-либо способ иметь проверку синтаксиса Eclipse мои включенные файлы (или что такое лучшая практика для этого). То, что я имею в виду, - то, что, если я включаю файлы, которым объявили переменные в родителе, я добираюсь, набор ошибок о необъявленных переменных (имеет смысл).
Таким образом, как люди обходят это?
Подведенный ниже код будет проходить через HTML-документ, получить все формы и выполнять всплывающее предупреждение о именах каждой формы.
var formsCollection = document.getElementsByTagName("form");
for(var i=0;i<formsCollection.length;i++)
{
alert(formsCollection[i].name);
}
Это всего лишь начало, чтобы увидеть, если вы получаете потребуется возмущение. После этого удалите предупреждение и продолжайте делать то, что вам нужно.
-121--3787349-Отключить проверку JSP в Eclipse (она всегда была сбой ), или, лучше, просто не используйте Scriptlets . Считается Плохая практика . Держите код Java в реальных классах Java и используйте Taglibs / EL в JSP.
Вы уверены, что вы используете
<%@ include ... %>
, а не
<jsp:include ... >?
Я хотел бы уточнить, что это сценарий, о котором вы говорите:
include.jsp:
<%@ page language="java" %>
<%
boolean testBoolean = true;
%>
приложение .jsp:
<%@ page language="java" %>
<%@include file="/WEB-INF/includeMe.jsp"%>
<%
testBoolean = false;
%>
И вы получаете неразработанную переменную ошибку на TestBoolean в файле app.jsp? Если это так, я не уверен, что не так, потому что я не могу воспроизвести эту проблему в Eclipse 3.5 (с установленным WTP).
Это может также помочь: Переменные в страницах JSP с «включены» страницы
Наилучшая практика заключается в том, чтобы инкапсулировать весь код Java в качестве тегов, а затем использовать теги в вашем JSP. В качестве бонуса, когда вы делаете это, вы будете писать Java в файлах .java, чье синтаксическое затмение проверит вас. Вы можете найти больше информации о тегах от Солнца
Содержимое вашего фрагмента будет проверено в рамках проверки основного файла, то есть о найденных ошибках будет сообщено директиве include в основном файле. Ваш фрагмент может быть корректным или недействительным по разным причинам в зависимости от того, какой файл его включает, предполагая, что любые файлы его включают вообще.