[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;
}
}