[222137] NPE's coming from TaglibController after import of WAR
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
index 6f563e1..e4454cc 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/contentmodel/TaglibController.java
@@ -165,7 +165,13 @@
 				Map.Entry[] entries = (Map.Entry[]) fDocumentMap.entrySet().toArray(new Map.Entry[fDocumentMap.size()]);
 				for (int i = 0; i < entries.length; i++) {
 					info = (DocumentInfo) entries[i].getValue();
-					if (info != null && info.textFileBuffer.equals(buffer)) {
+					/**
+					 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=222137
+					 * 
+					 * Might be null if setup() has been called but
+					 * bufferCreated() has not, yet.
+					 */
+					if (info != null && info.textFileBuffer != null && info.textFileBuffer.equals(buffer)) {
 						fDocumentMap.remove(entries[i].getKey());
 						break;
 					}
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java
index 183549c..e707a12 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/IJSPProblem.java
@@ -10,10 +10,11 @@
 	int TEIValidationMessage = F_PROBLEM_ID_LITERAL + 2;
 	int TEIClassNotInstantiated = F_PROBLEM_ID_LITERAL + 3;
 	int TEIClassMisc = F_PROBLEM_ID_LITERAL + 10;
+	
 	int TagClassNotFound = F_PROBLEM_ID_LITERAL + 101;
 	
 	/**
-	 * @return
+	 * @return the ID of this JSP problem
 	 */
 	int getEID();
 
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelper.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelper.java
index 04f4a17..3a8f661 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelper.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/taglib/TaglibHelper.java
@@ -470,11 +470,11 @@
 			}
 
 			public boolean isWarning() {
-				return false;
+				return true;
 			}
 
 			public boolean isError() {
-				return true;
+				return false;
 			}
 
 			public int getSourceStart() {
@@ -498,7 +498,7 @@
 			}
 
 			public int getID() {
-				return IJSPProblem.TEIValidationMessage;
+				return getEID();
 			}
 
 			public String[] getArguments() {
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPBatchValidator.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPBatchValidator.java
index 4e9be56..677960a 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPBatchValidator.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/validation/JSPBatchValidator.java
@@ -183,7 +183,7 @@
 				currentFile = wsRoot.getFile(new Path(uris[i]));
 				if (currentFile != null && currentFile.exists()) {
 					if (shouldValidate(currentFile) && fragmentCheck(currentFile)) {
-						Message message = new LocalizedMessage(IMessage.LOW_SEVERITY, "" + (i + 1) + "/" + uris.length + " - " + currentFile.getFullPath().toString().substring(1));
+						Message message = new LocalizedMessage(IMessage.LOW_SEVERITY, currentFile.getFullPath().toString().substring(1));
 						reporter.displaySubtask(this, message);
 						validateFile(currentFile, reporter);
 					}
@@ -213,7 +213,7 @@
 				for (int i = 0; i < files.length && !reporter.isCancelled(); i++) {
 					if (shouldValidate(files[i]) && fragmentCheck(files[i])) {
 
-						message = new LocalizedMessage(IMessage.LOW_SEVERITY, "" + (i + 1) + "/" + files.length + " - " + files[i].getFullPath().toString().substring(1));
+						message = new LocalizedMessage(IMessage.LOW_SEVERITY, files[i].getFullPath().toString().substring(1));
 						reporter.displaySubtask(this, message);
 
 						validateFile(files[i], reporter);