Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 318596 - [hotbug-request] Default facelets taglibs are not loaded when product is installed into a path with spaces
Summary: [hotbug-request] Default facelets taglibs are not loaded when product is inst...
Status: RESOLVED FIXED
Alias: None
Product: Java Server Faces
Classification: WebTools
Component: Core (show other bugs)
Version: 3.2   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: 3.2.1   Edit
Assignee: Gerry Kessler CLA
QA Contact:
URL:
Whiteboard: PMC_approved
Keywords:
: 319445 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-07-01 09:00 EDT by Yury Kats CLA
Modified: 2010-08-24 15:08 EDT (History)
3 users (show)

See Also:
raghunathan.srinivasan: pmc_approved? (david_williams)
raghunathan.srinivasan: pmc_approved? (naci.dai)
deboer: pmc_approved+
raghunathan.srinivasan: pmc_approved? (neil.hauge)
raghunathan.srinivasan: pmc_approved? (kaloyan)


Attachments
Patch (1.19 KB, patch)
2010-07-01 13:41 EDT, Yury Kats CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yury Kats CLA 2010-07-01 09:00:00 EDT
if the product is installed into a path that contains spaces (or at least product's configuration folder has spaces in its name), all standard facelets taglibs fail to load.

As a result, there is no Content Model, Content Assist or Metadata for any of the standard JSF2 tags.

Exception being logged:

!ENTRY org.eclipse.jst.jsf.facelet.core 4 0 2010-06-30 18:18:06.921
!MESSAGE Trying to load default taglib for: /std-taglibs/facelets_jsf_core.taglib.xml
!STACK 0
java.net.URISyntaxException: Illegal character in path at index 16: file:/C:/Program Files/IBM/SDP76/configuration/org.eclipse.osgi/bundles/1381/1/.cp/std-taglibs/facelets_jsf_core.taglib.xml
	at java.net.URI$Parser.fail(URI.java:2821)
	at java.net.URI$Parser.checkChars(URI.java:2994)
	at java.net.URI$Parser.parseHierarchical(URI.java:3078)
	at java.net.URI$Parser.parse(URI.java:3026)
	at java.net.URI.<init>(URI.java:590)
	at java.net.URL.toURI(URL.java:919)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.DefaultStandardTaglibLocator.<clinit>(DefaultStandardTaglibLocator.java:50)
....

Followed by:

!ENTRY org.eclipse.jst.jsf.facelet.core 4 0 2010-06-30 18:18:08.812
!MESSAGE Could not find taglib for uri: http://java.sun.com/jsp/jstl/core
!STACK 0
java.lang.Exception
	at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor.ensureStandardLibraries(ProjectTaglibDescriptor.java:109)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor.initialize(ProjectTaglibDescriptor.java:90)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.taglib.ProjectTaglibDescriptor.getTagLibraries(ProjectTaglibDescriptor.java:117)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.initialize(FaceletTagRegistry.java:155)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.getAllTagLibraries(FaceletTagRegistry.java:110)
	at org.eclipse.jst.jsf.facelet.core.internal.registry.FaceletTagRegistry.getTagLibrary(FaceletTagRegistry.java:201)
	at org.eclipse.jst.jsf.facelet.core.internal.metadata.FaceletNamespaceMetaDataLocator.locateMetaDataModelProviders(FaceletNamespaceMetaDataLocator.java:45)
	at org.eclipse.jst.jsf.common.metadata.internal.DomainLoadingStrategy.locateMetaDataSourceInstances(DomainLoadingStrategy.java:143)
	at org.eclipse.jst.jsf.common.metadata.internal.DomainLoadingStrategy.load(DomainLoadingStrategy.java:55)
	at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModel.load(MetaDataModel.java:93)
	at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModelManager.loadMetadata(MetaDataModelManager.java:147)
	at org.eclipse.jst.jsf.common.metadata.internal.MetaDataModelManager.getModel(MetaDataModelManager.java:90)
	at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getMDModel(TaglibDomainMetaDataQueryHelper.java:205)
	at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getModel(TaglibDomainMetaDataQueryHelper.java:90)
	at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getEntities(TaglibDomainMetaDataQueryHelper.java:123)
	at org.eclipse.jst.jsf.common.metadata.query.TaglibDomainMetaDataQueryHelper.getEntity(TaglibDomainMetaDataQueryHelper.java:101)
....

This happens for all standard taglibs.
Comment 1 Yury Kats CLA 2010-07-01 13:41:04 EDT
Created attachment 173245 [details]
Patch
Comment 2 Yury Kats CLA 2010-07-01 13:41:48 EDT
Patch attached. One line change. Please consider for 3.2.1. Thanks.
Comment 3 Yury Kats CLA 2010-07-08 10:28:11 EDT
Setting as hotbug-request.
1. Affiliation: IBM
2. Ideally this would be applied to 3.2.1.
3. Adopter product by default installs on Windows into "Program Files" folder, which means the problem is affecting majority of the product users.
Comment 4 Raghunathan Srinivasan CLA 2010-07-08 14:40:51 EDT
    * Explain why you believe this is a stop-ship defect. Or, if it is a "hotbug" (requested by an adopter) please document it as such. 
Hot bug request. JSF 2.0 support is broken when product is installed in a folder with spaces.
    * Is there a work-around? If so, why do you believe the work-around is insufficient? 
The workaround is not possible in scenarios where end-users are mandated to install the product in a specific path that contain spaces.
    * How has the fix been tested? Is there a test case attached to the bugzilla record? Has a JUnit Test been added? 
Manual testing
    * Give a brief technical overview. Who has reviewed this fix? 
See description
    * What is the risk associated with this fix?
low.
Comment 5 Raghunathan Srinivasan CLA 2010-07-12 19:24:06 EDT
Released to build
Comment 6 Yury Kats CLA 2010-07-12 20:51:33 EDT
Thank you.
Comment 7 Raghunathan Srinivasan CLA 2010-08-24 15:08:12 EDT
*** Bug 319445 has been marked as a duplicate of this bug. ***