commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oliver Heger (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CONFIGURATION-253) FileConfiguration getFile(), getFileName(), getBasePath() are not always consistent
Date Tue, 24 Apr 2007 20:36:15 GMT

    [ https://issues.apache.org/jira/browse/CONFIGURATION-253?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12491438
] 

Oliver Heger commented on CONFIGURATION-253:
--------------------------------------------

After having a deeper look into this issue I am no longer sure that this is a bug. You loaded
the configuration with the load(String) method, and the Javadocs for this method state

"This does not change the source of the configuration (i.e. the internally maintained file
name). Use one of the setter methods for this purpose."

However I tend to agree that the current behavior is confusing. Why can you obtain a URL and
a path name from a configuration loaded this way, but no File?

I have written a test case and implemented a (simple) fix, which would cause getFile() to
return a valid file name in this case. What do others think? Should we change the current
behavior?

> FileConfiguration getFile(), getFileName(), getBasePath() are not always consistent
> -----------------------------------------------------------------------------------
>
>                 Key: CONFIGURATION-253
>                 URL: https://issues.apache.org/jira/browse/CONFIGURATION-253
>             Project: Commons Configuration
>          Issue Type: Bug
>    Affects Versions: 1.3
>            Reporter: Thomas Wabner
>             Fix For: 1.5
>
>
> Taken from the maillinglist:
> > I have a properties configuration which is loaded without a problem.
> > Later in my application I will access the file which is aligned to 
> > this configuration.
> > 
> >  
> > 
> > final IFileConfiguration _productConf = 
> > _conf.getProductConfigurations().get(_productId);
> > 
> > log.debug("product conf file " + _productConf.getFile());
> > 
> > log.debug("product conf filename " + _productConf.getFileName());
> > 
> > log.debug("product conf base path " + _productConf.getBasePath());
> > 
> >  
> > 
> > The methods _productConf.getFile() and _productConf.getFileName() 
> > returning null but the getBasePath() returns a path which is correct 
> > (like file:/C:/Projects/workspace/myProject/project.properties). Seems 
> > for me like a bug because the PropertiesConfiguration is loaded 
> > correct and works.
> > 
> >  
> > 
> > By side: I have also set a file reloading strategy for this 
> > configuration.
> > 
> >  
> > 
> > Any ideas what's happen in this case or where I can find the problem? 
> > It would be nicer to get the File() instead the BasePath which has to 
> > be converted into a URL before I can access the whole properties file.
> > 
> >  
> > 
> > Thanks in advance,
> > 
> >  
> > 
> > - Thomas Wabner
> > 
> > 
> Thomas,
> you are right, the conversions between a base path, a file name, and a File are not always
consistent. How did you load the configuration (this determines, which internal fields are
set)?
> I would recommend to work with URLs, i.e. the method getURL(). A file-based configuration's
URL is always defined.
> If you like, you can open a Jira ticket for this problem.
> Thanks.
> Oliver
> The file is loaded in this way:
> _productConf = new ProductConfiguration();
> _productConf.load(FileTools.getPathForList(_propductPathList).getPath());
> means the load method gets an String and not an File.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message