Bug 112560

Summary: ConfigRegistry unable to load property config files due to malformed URL created in getConfigURL()
Product: [Retired] Red Hat Web Application Framework Reporter: Brett Prucha <pruchaba_bah>
Component: otherAssignee: Dennis Gregorovic <dgregor>
Status: CLOSED WORKSFORME QA Contact: Jon Orris <jorris>
Severity: high Docs Contact:
Priority: medium    
Version: nightly   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-12-26 15:19:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 106481    

Description Brett Prucha 2003-12-22 21:19:20 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)

Description of problem:
In my Win32 environment I have ccm.home="C:\Program 
Files\eclipse\workspace\ccm-core-6.1.0.AUTO.12.13.2003-2\core". The 
function getConfigURL() of com.arsdigita.packaging.ConfigRegistry 
returns an invalid URL using this ccm home.  The URL looks for the 
file using FTP from host "C".  According to the url primer pointed to 
from Sun's URL JavaDoc 
("http://archive.ncsa.uiuc.edu/SDG/Software/Mosaic/Demo/url-
primer.html") file:// uses the ftp protocal and not the local file 
system.  Changing the URL to "file:/" works.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
Try and load the config file from a Win32 system

Additional info:

Comment 1 Richard Li 2003-12-23 15:59:30 UTC
Changing the URL to file:/ breaks ConfigRegistry on Linux.

file:// should be correct because System.getProperty("ccm.home")
returns a value that has a prefix slash, which translates the URL to
file:///, which translates into the file protocol.

Comment 2 Brett Prucha 2003-12-23 16:13:33 UTC
Yes, System.getProperty("ccm.home") returns a value that has a prefix 
slash if you are running under a unix system but if you are running 
under Win32 it's going to be [Drive]:\path\to\ccm\home.  So under 
windows the URL is file://[Drive]:\path\to\ccm\home which gets 
translated to get using FTP from server [Drive] the 
file "\path\to\ccm\home".  Also what happens on unix if ccm home is 
not an absolute path but relative to the working directory?  My guess 
is that it will break.

Comment 3 Brett Prucha 2003-12-23 16:28:01 UTC
I just tested file:///[Drive]:\path\to\ccm\home and it works as 
well.  The solution looks like ccm.home has to be the full path 
location and if it doesn't start with "/" add it.

Comment 4 Richard Li 2003-12-23 20:41:17 UTC
Good catch. The fix appears to make the Windows ccm-run script set
ccm.home with the full path.

Comment 5 Dennis Gregorovic 2003-12-23 22:47:01 UTC
I checked in a fix to ConfigRegistry.  Unfortunately, I don't have
access to a Windows box at the moment.  Please let me know if the fix
works for you.