[329997] JSP Syntax Validators show error markers even when the build based markers are turned off.
diff --git a/features/org.eclipse.wst.common_core.feature.patch/buildnotes_org.eclipse.wst.common_core.feature.patch.html b/features/org.eclipse.wst.common_core.feature.patch/buildnotes_org.eclipse.wst.common_core.feature.patch.html
index eca050d..5125c14 100644
--- a/features/org.eclipse.wst.common_core.feature.patch/buildnotes_org.eclipse.wst.common_core.feature.patch.html
+++ b/features/org.eclipse.wst.common_core.feature.patch/buildnotes_org.eclipse.wst.common_core.feature.patch.html
@@ -43,6 +43,7 @@
 <p>Bug <a href='https://bugs.eclipse.org/314757'>314757</a>. Validation Framework does not wait for validation jobs to end before shutting down</p>
 <p>Bug <a href='https://bugs.eclipse.org/322173'>322173</a>. J2EEDeployOperation does not allow callers to get a list of affected projects</p>
 <p>Bug <a href='https://bugs.eclipse.org/328320'>328320</a>. NPE in EarUtilities.getReferencingEARProjects()</p>
+<p>Bug <a href='https://bugs.eclipse.org/329997'>329997</a>. JSP Syntax Validators show error markers even when the build based markers are turned off.</p>
 
 </body>
 </html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.common_core.feature.patch/feature.properties b/features/org.eclipse.wst.common_core.feature.patch/feature.properties
index 395a427..2435577 100644
--- a/features/org.eclipse.wst.common_core.feature.patch/feature.properties
+++ b/features/org.eclipse.wst.common_core.feature.patch/feature.properties
@@ -57,6 +57,7 @@
 Bug https://bugs.eclipse.org/314757 Validation Framework does not wait for validation jobs to end before shutting down\n\
 Bug https://bugs.eclipse.org/322173 J2EEDeployOperation does not allow callers to get a list of affected projects\n\
 Bug https://bugs.eclipse.org/328320 NPE in EarUtilities.getReferencingEARProjects()\n\
+Bug https://bugs.eclipse.org/329997 JSP Syntax Validators show error markers even when the build based markers are turned off.\n\
 \n\
 # "copyright" property - text of the "Feature Update Copyright"
 copyright=\
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html b/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html
index 9ce4c15..c5348df 100644
--- a/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html
+++ b/features/org.eclipse.wst.common_ui.feature.patch/buildnotes_org.eclipse.wst.common_ui.feature.patch.html
@@ -14,5 +14,6 @@
 <h2>org.eclipse.wst.common_ui.feature</h2>
 
 <p>Bug <a href='https://bugs.eclipse.org/288120'>288120</a>. Double clicking to insert a snippet can modify a read-only file</p>
+<p>Bug <a href='https://bugs.eclipse.org/329997'>329997</a>. JSP Syntax Validators show error markers even when the build based markers are turned off.</p>
 </body>
 </html>
\ No newline at end of file
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/feature.properties b/features/org.eclipse.wst.common_ui.feature.patch/feature.properties
index 25c11f1..6688559 100644
--- a/features/org.eclipse.wst.common_ui.feature.patch/feature.properties
+++ b/features/org.eclipse.wst.common_ui.feature.patch/feature.properties
@@ -28,6 +28,7 @@
 Contains fixes described in the following bugzilla(s):\n\
 \n\
 Bug https://bugs.eclipse.org/288120 Double clicking to insert a snippet can modify a read-only file\n\
+Bug https://bugs.eclipse.org/329997 JSP Syntax Validators show error markers even when the build based markers are turned off.\n\
 \n\
 
 # "copyright" property - text of the "Feature Update Copyright"
diff --git a/features/org.eclipse.wst.common_ui.feature.patch/feature.xml b/features/org.eclipse.wst.common_ui.feature.patch/feature.xml
index 3fea75d..719fc0d 100644
--- a/features/org.eclipse.wst.common_ui.feature.patch/feature.xml
+++ b/features/org.eclipse.wst.common_ui.feature.patch/feature.xml
@@ -28,4 +28,11 @@
          version="0.0.0"
          unpack="false"/>
 
+   <plugin
+         id="org.eclipse.wst.validation.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
 </feature>
diff --git a/plugins/org.eclipse.wst.validation.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.validation.ui/META-INF/MANIFEST.MF
index 6e0dd26..0ca14a6 100644
--- a/plugins/org.eclipse.wst.validation.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.wst.validation.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name.0
 Bundle-SymbolicName: org.eclipse.wst.validation.ui; singleton:=true
-Bundle-Version: 1.2.4.qualifier
+Bundle-Version: 1.2.5.qualifier
 Bundle-Activator: org.eclipse.wst.validation.internal.ui.plugin.ValidationUIPlugin
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.wst.validation.ui/property_files/org/eclipse/wst/validation/ui/internal/messages.properties b/plugins/org.eclipse.wst.validation.ui/property_files/org/eclipse/wst/validation/ui/internal/messages.properties
index af8e823..f08ea23 100644
--- a/plugins/org.eclipse.wst.validation.ui/property_files/org/eclipse/wst/validation/ui/internal/messages.properties
+++ b/plugins/org.eclipse.wst.validation.ui/property_files/org/eclipse/wst/validation/ui/internal/messages.properties
@@ -1,5 +1,5 @@
 ###############################################################################
-# Copyright (c) 2001, 2008 IBM Corporation and others.
+# Copyright (c) 2001, 2010 IBM Corporation and others.
 # All rights reserved. This program and the accompanying materials
 # are made available under the terms of the Eclipse Public License v1.0
 # which accompanies this distribution, and is available at
@@ -150,7 +150,8 @@
 FrMsgSev=Select the severity level for the following problems
 
 RebuildTitle=Validation Settings Changed
-RebuildMsg=The validation settings have changed. A full rebuild is required for the changes to take effect. Do the full build now?
+RebuildMsg=The workspace validation settings have changed. A full rebuild is required for the changes to take effect. Do the full build now?
+RevalidateProjectMsg=The project validation settings have changed. A full project re-validation is required for the changes to take effect. Do the full re-validation now?
 
 #
 # End Validation Builder Framework UI Strings
diff --git a/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/ValUIMessages.java b/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/ValUIMessages.java
index 99da9b9..e93fb09 100644
--- a/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/ValUIMessages.java
+++ b/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/ValUIMessages.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2007, 2008 IBM Corporation and others.
+ * Copyright (c) 2007, 2010 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -109,6 +109,7 @@
 	
 	public static String RebuildTitle;
 	public static String RebuildMsg;
+    public static String RevalidateProjectMsg;
 	
 		
 	static {
diff --git a/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/preferences/ValidationPropertyPage.java b/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/preferences/ValidationPropertyPage.java
index 9aabee4..7081e2f 100644
--- a/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/preferences/ValidationPropertyPage.java
+++ b/plugins/org.eclipse.wst.validation.ui/vf2/org/eclipse/wst/validation/ui/internal/preferences/ValidationPropertyPage.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2001, 2008 IBM Corporation and others.
+ * Copyright (c) 2001, 2010 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -62,6 +62,7 @@
 import org.eclipse.wst.validation.Validator;
 import org.eclipse.wst.validation.internal.ConfigurationManager;
 import org.eclipse.wst.validation.internal.GlobalConfiguration;
+import org.eclipse.wst.validation.internal.ProjectReValidationJob;
 import org.eclipse.wst.validation.internal.ProjectConfiguration;
 import org.eclipse.wst.validation.internal.ValManager;
 import org.eclipse.wst.validation.internal.ValPrefManagerProject;
@@ -664,6 +665,14 @@
 			ProjectPreferences pp = new ProjectPreferences(project, _override.getSelection(), _suspend.getSelection(), null);
 			ValPrefManagerProject vpm = new ValPrefManagerProject(project);
 			vpm.savePreferences(pp, _validators);
+			
+            if (_changes > 0 && !pp.getSuspend() && 
+                MessageDialog.openQuestion(_shell, ValUIMessages.RebuildTitle, ValUIMessages.RevalidateProjectMsg)){
+                
+                ProjectReValidationJob pbj = new ProjectReValidationJob(project);
+                pbj.schedule();
+            }
+            
 			return true;
 		}
 		
diff --git a/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF b/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF
index a1d6a8f..8e394aa 100644
--- a/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.wst.validation/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name.0
 Bundle-SymbolicName: org.eclipse.wst.validation; singleton:=true
-Bundle-Version: 1.2.14.qualifier
+Bundle-Version: 1.2.15.qualifier
 Bundle-Activator: org.eclipse.wst.validation.internal.plugin.ValidationPlugin
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java
index 5bb1c28..755aa82 100644
--- a/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java
+++ b/plugins/org.eclipse.wst.validation/validate/org/eclipse/wst/validation/internal/operations/ValidationBuilder.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2001, 2009 IBM Corporation and others.
+ * Copyright (c) 2001, 2010 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -19,6 +19,7 @@
 import java.util.Set;
 
 import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
 import org.eclipse.core.resources.IResourceDelta;
 import org.eclipse.core.resources.IncrementalProjectBuilder;
 import org.eclipse.core.runtime.CoreException;
@@ -27,6 +28,7 @@
 import org.eclipse.wst.validation.ValidationFramework;
 import org.eclipse.wst.validation.internal.ConfigurationManager;
 import org.eclipse.wst.validation.internal.InternalValidatorManager;
+import org.eclipse.wst.validation.internal.MarkerManager;
 import org.eclipse.wst.validation.internal.ProjectConfiguration;
 import org.eclipse.wst.validation.internal.ResourceConstants;
 import org.eclipse.wst.validation.internal.ResourceHandler;
@@ -151,7 +153,10 @@
 		// won't they have builders of their own.
 		IProject[] referenced = getAllReferencedProjects(project, null);
 		if (ValidationFramework.getDefault().isSuspended(project) || 
-			ValManager.getDefault().isDisabled(project))return referenced;
+			ValManager.getDefault().isDisabled(project)) {
+		  MarkerManager.getDefault().deleteMarkers(project, System.currentTimeMillis(), IResource.DEPTH_INFINITE);
+		  return referenced;
+		}
 
 		try {
 			newBuild(kind, monitor);
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java
index 7505e88..c84a0f2 100644
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java
+++ b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/DisabledValidatorManager.java
@@ -1,3 +1,14 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
 package org.eclipse.wst.validation.internal;
 
 import java.util.Collections;
@@ -32,6 +43,7 @@
 	
 	private DisabledValidatorManager(){
 		ValPrefManagerProject.addListener(this);
+        ValPrefManagerGlobal.getDefault().addListener(this);
 	}
 	
 	/*
@@ -39,6 +51,7 @@
 	 */
 	public void dispose(){
 		ValPrefManagerProject.removeListener(this);
+        ValPrefManagerGlobal.getDefault().removeListener(this);
 	}
 
 	public Set<Validator> getDisabledValidatorsFor(IResource resource) {
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java
index 332a2c7..c1a3926 100644
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java
+++ b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/FullBuildJob.java
@@ -1,3 +1,14 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
 package org.eclipse.wst.validation.internal;
 
 import org.eclipse.core.resources.IncrementalProjectBuilder;
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectReValidationJob.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectReValidationJob.java
new file mode 100644
index 0000000..d802dbd
--- /dev/null
+++ b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ProjectReValidationJob.java
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2010 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.wst.validation.internal;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.resources.WorkspaceJob;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.wst.validation.internal.plugin.ValidationPlugin;
+
+public class ProjectReValidationJob extends WorkspaceJob {
+    
+    private final IProject project;
+
+    public ProjectReValidationJob(IProject project){
+        super(ValMessages.JobName);
+        this.project = project;
+    }
+
+    @Override
+    public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException {
+        try {
+            project.build(IncrementalProjectBuilder.FULL_BUILD, ValidationPlugin.VALIDATION_BUILDER_ID, null, monitor);
+        }
+        catch (Exception e){
+            return new Status(IStatus.ERROR,ValidationPlugin.PLUGIN_ID, e.toString(), e);
+        }
+        return Status.OK_STATUS;
+    }
+
+}
diff --git a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java
index ac457b5..c1ef613 100644
--- a/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java
+++ b/plugins/org.eclipse.wst.validation/vf2/org/eclipse/wst/validation/internal/ValManager.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2007, 2009 IBM Corporation and others.
+ * Copyright (c) 2007, 2010 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -447,9 +447,9 @@
 	 */
 	public boolean isDisabled(IProject project){
 		GlobalPreferences gp = getGlobalPreferences();
-		if (!gp.getOverride() || project == null)return gp.getDisableAllValidation();
+		if (mustUseGlobalValidators(project))return gp.getDisableAllValidation();
 		
-		ProjectPreferences pp = _projectPreferences.get(project);
+		ProjectPreferences pp = getProjectPreferences(project);
 		if (pp == null)return gp.getDisableAllValidation();
 		return pp.getSuspend();		
 	}