Fixed: [ Issue 80 ] Unnecessary but valid imports are not being resolved
https://code.google.com/p/protobuf-dt/issues/detail?id=80

diff --git a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/validation/ProtobufJavaValidator.java b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/validation/ProtobufJavaValidator.java
index 0f07e85..1238ee7 100644
--- a/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/validation/ProtobufJavaValidator.java
+++ b/com.google.eclipse.protobuf/src/com/google/eclipse/protobuf/validation/ProtobufJavaValidator.java
@@ -16,6 +16,7 @@
 import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.xtext.naming.*;
+import org.eclipse.xtext.scoping.impl.ImportUriResolver;
 import org.eclipse.xtext.validation.Check;
 
 import com.google.eclipse.protobuf.protobuf.*;
@@ -29,6 +30,7 @@
 public class ProtobufJavaValidator extends AbstractProtobufJavaValidator {
 
   @Inject private FieldOptions fieldOptions;
+  @Inject private ImportUriResolver uriResolver;
   @Inject private IQualifiedNameProvider qualifiedNameProvider;
   @Inject private Properties properties;
 
@@ -47,13 +49,21 @@
   }
 
   @Check public void checkImportIsResolved(Import anImport) {
+    boolean isImported = doCheckImportIsResolved(anImport);
+    if (isImported) return;
+    uriResolver.apply(anImport);
+    isImported = doCheckImportIsResolved(anImport);
+    if (isImported) return;
+    error(format(importNotFound, anImport.getImportURI()), IMPORT__IMPORT_URI);
+  }
+
+  private boolean doCheckImportIsResolved(Import anImport) {
     String importUri = anImport.getImportURI();
     if (!isEmpty(importUri)) {
       URI uri = URI.createURI(importUri);
-      if (!isEmpty(uri.scheme())) return;
+      if (!isEmpty(uri.scheme())) return true;
     }
-    String message = format(importNotFound, importUri);
-    error(message, IMPORT__IMPORT_URI);
+    return false;
   }
 
   @Check public void checkSyntaxIsProto2(Syntax syntax) {