[109953] NPE's during JSP reconcile/validation
diff --git a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
index 4bdb485..d652586 100644
--- a/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
+++ b/bundles/org.eclipse.jst.jsp.core/src/org/eclipse/jst/jsp/core/internal/java/JSPTranslationUtil.java
@@ -49,15 +49,18 @@
 				if (translatedChildTextEdit != null)
 					((MultiTextEdit) translatedTextEdit).addChild(translatedChildTextEdit);
 			}
-		} else if (textEdit instanceof ReplaceEdit) {
+		}
+		else if (textEdit instanceof ReplaceEdit) {
 			if (jspOffset == -1)
 				return null;
 
 			if (!getTranslation().javaSpansMultipleJspPartitions(javaOffset, length))
 				translatedTextEdit = new ReplaceEdit(jspOffset, length, ((ReplaceEdit) textEdit).getText());
-		} else if (textEdit instanceof InsertEdit) {
+		}
+		else if (textEdit instanceof InsertEdit) {
 			translatedTextEdit = new InsertEdit(jspOffset, ((InsertEdit) textEdit).getText());
-		} else if (textEdit instanceof DeleteEdit) {
+		}
+		else if (textEdit instanceof DeleteEdit) {
 			translatedTextEdit = new DeleteEdit(jspOffset, length);
 			TextEdit[] children = ((DeleteEdit) textEdit).getChildren();
 			for (int i = 0; i < children.length; i++) {
@@ -65,20 +68,25 @@
 				if (translatedChildTextEdit != null)
 					((DeleteEdit) translatedTextEdit).addChild(translatedChildTextEdit);
 			}
-		} else if (textEdit instanceof CopySourceEdit) {
+		}
+		else if (textEdit instanceof CopySourceEdit) {
 			translatedTextEdit = new CopySourceEdit(jspOffset, length);
 			((CopySourceEdit) translatedTextEdit).setTargetEdit(((CopySourceEdit) textEdit).getTargetEdit());
 			((CopySourceEdit) translatedTextEdit).setSourceModifier(((CopySourceEdit) textEdit).getSourceModifier());
-		} else if (textEdit instanceof CopyTargetEdit) {
+		}
+		else if (textEdit instanceof CopyTargetEdit) {
 			translatedTextEdit = new CopyTargetEdit(jspOffset);
 			((CopyTargetEdit) textEdit).getSourceEdit().setTargetEdit((CopyTargetEdit) translatedTextEdit);
-		} else if (textEdit instanceof MoveSourceEdit) {
+		}
+		else if (textEdit instanceof MoveSourceEdit) {
 			translatedTextEdit = new MoveSourceEdit(jspOffset, length);
 			((MoveSourceEdit) translatedTextEdit).setTargetEdit(((MoveSourceEdit) textEdit).getTargetEdit());
-		} else if (textEdit instanceof MoveTargetEdit) {
+		}
+		else if (textEdit instanceof MoveTargetEdit) {
 			translatedTextEdit = new MoveTargetEdit(jspOffset);
 			((MoveTargetEdit) textEdit).getSourceEdit().setTargetEdit((MoveTargetEdit) translatedTextEdit);
-		} else {
+		}
+		else {
 			System.out.println("Need to translate " + textEdit); //$NON-NLS-1$
 		}
 
@@ -94,8 +102,11 @@
 				JSPTranslationAdapter translationAdapter = (JSPTranslationAdapter) xmlDoc.getAdapterFor(IJSPTranslation.class);
 				if (translationAdapter != null)
 					fTranslation = translationAdapter.getJSPTranslation();
-			} finally {
-				xmlModel.releaseFromRead();
+			}
+			finally {
+				if (xmlModel != null) {
+					xmlModel.releaseFromRead();
+				}
 			}
 		}
 
diff --git a/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF b/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF
index 83de2e5..eaaa4ce 100644
--- a/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.jst.jsp.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jst.jsp.ui; singleton:=true
-Bundle-Version: 0.7.0
+Bundle-Version: 0.7.1
 Bundle-Activator: org.eclipse.jst.jsp.ui.internal.JSPUIPlugin
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
index fe96814..17bd844 100644
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
+++ b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/reconcile/ReconcileStepForJspTranslation.java
@@ -71,22 +71,31 @@
 	 */
 	protected IReconcileResult[] reconcileModel(DirtyRegion dirtyRegion, IRegion subRegion) {
 
-		if(DEBUG)
-            System.out.println("[trace reconciler] > translating JSP in JSP TRANSLATE step"); //$NON-NLS-1$	
 
-		if (isCanceled() || dirtyRegion == null)
-			return EMPTY_RECONCILE_RESULT_SET;
+		if (DEBUG) {
+			System.out.println("[trace reconciler] > translating JSP in JSP TRANSLATE step"); //$NON-NLS-1$
+		}
 
-		// create java model for java reconcile
-		JSPTranslationAdapter adapter = getJSPTranslationAdapter();
-		fJSPTranslation = adapter.getJSPTranslation();
-		fModel = new JSPTranslationWrapper(fJSPTranslation);
+		IReconcileResult[] result = EMPTY_RECONCILE_RESULT_SET;
 
-		if(DEBUG)
-            System.out.println("[trace reconciler] > JSP TRANSLATE step done"); //$NON-NLS-1$	
-		
-		//return EMPTY_RECONCILE_RESULT_SET;
-		return adaptELProblems();
+		if (!(isCanceled() || dirtyRegion == null)) {
+
+			// create java model for java reconcile
+			JSPTranslationAdapter adapter = getJSPTranslationAdapter();
+
+			if (adapter != null) {
+
+				fJSPTranslation = adapter.getJSPTranslation();
+				fModel = new JSPTranslationWrapper(fJSPTranslation);
+
+				result = adaptELProblems();
+			}
+		}
+		if (DEBUG) {
+			System.out.println("[trace reconciler] > JSP TRANSLATE step done"); //$NON-NLS-1$	
+		}
+
+		return result;
 	}
 
 	private IReconcileResult[] adaptELProblems() {