[330572] Local taglib path displayed instead of taglib URI in JSP (taglib declaration tag)
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTaglibCompletionProposalComputer.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTaglibCompletionProposalComputer.java
index a51b8c6..b60b39f 100644
--- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTaglibCompletionProposalComputer.java
+++ b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/internal/contentassist/JSPTaglibCompletionProposalComputer.java
@@ -151,16 +151,18 @@
 									break;
 								}
 								case ITaglibRecord.TLD : {
-									IPath path = ((ITLDRecord) taglibRecord).getPath();
-									IPath localContextRoot = FacetModuleCoreSupport.computeWebContentRootPath(basePath);
-									if (localContextRoot.isPrefixOf(path)) {
-										uri = IPath.SEPARATOR + path.removeFirstSegments(localContextRoot.segmentCount()).toString();
-										uriToRecords.put(uri, taglibRecord);
+									uri = descriptor.getURI();
+									if (uri == null || uri.trim().length() == 0) {
+										IPath path = ((ITLDRecord) taglibRecord).getPath();
+										IPath localContextRoot = FacetModuleCoreSupport.computeWebContentRootPath(basePath);
+										if (localContextRoot.isPrefixOf(path)) {
+											uri = IPath.SEPARATOR + path.removeFirstSegments(localContextRoot.segmentCount()).toString();
+										}
+										else {
+											uri = FacetModuleCoreSupport.getRuntimePath(path).toString();
+										}
 									}
-									else {
-										uri = FacetModuleCoreSupport.getRuntimePath(path).toString();
-										uriToRecords.put(uri, taglibRecord);
-									}
+									uriToRecords.put(uri, taglibRecord);
 									break;
 								}
 							}