Hi, the reloading examples have been fixed, and the site was redeployed. Thanks again.
Oliver Am 01.02.2018 um 10:26 schrieb Paul Wellner Bou: > Hi, > > thank you very much. > > Yes, this helps. This is more or less what I found out as well. That's why > I introduced the 6 seconds delay in my original example, to wait for this > 5s timeout. > I tried to call getProperty more than once, too, because I noticed > debugging that the check time is only filled after the first call. > > But somehow I wrote my test code in a way, that the reloading time was the > same as the time the file changed (which may happen in unit tests, its the > same millisecond). So the test failed again. > > Now I reordered the statements a bit, and it works now. I just need to add > a call in the very beginning of the test. The timeouts I introduced in the > first approach are already enough. > > So it works now. Thanks very much! > https://gist.github.com/paulwellnerbou/dfed371d67e2f19a699b248ebf5c62d7 > >> i am trying to implement a reloadable property using commons-reloading2 >>> (2.2), without success. I tried to follow the (outdated) examples on >>> >> https://commons.apache.org/proper/commons-configuration/userguide/howto_reloading.html#Reloading_File-based_Configurations >>> (both of them). >> >> Could you be a bit more specific about what is outdated, so that we can >> update the examples? >> > > Sure: > https://gist.github.com/paulwellnerbou/3e309535a8a516477dc2bede478f79f2/revisions > Maybe you could add that commons-beanutils:1.9.3 is required to avoid the > NoClassDefFoundException ( > https://stackoverflow.com/questions/16266047/very-simple-apache-commons-configuration-example-throws-noclassdeffounderror > ). > > Cheers, > Paul. > >> >>> Now I created a unit test against this API which I would expect it to >> pass, >>> but it doesn't: >>> https://gist.github.com/paulwellnerbou/dfed371d67e2f19a699b248ebf5c62d7 >>> >>> Any idea what I am doing wrong? >> >> I had a deeper look at the test and the implementation, and here is what >> I found out: >> >> The class for checking whether a reload of a file is required is >> FileHandlerReloadingDetector. The class records the time of the last >> check and has a refreshDelay property; it only checks again after the >> time configured for the delay is elapsed. The default refreshDelay is 5 >> seconds. This is one reason why your test does not pass; you need to >> decrease this delay or wait longer. >> >> The other reason is that there is indeed a problem in the implementation >> that causes the first call to getConfiguration() to get missed by the >> reload checker. The CONFIGURATION_REQUEST event is already fired before >> the file to be loaded is properly initialized, and therefore, the >> checker cannot set its last check time. This is initialized only at the >> second call to getConfiguration(). So the test would only be successful >> if getConfiguration() was called another time (taking the refresh delay >> into account). >> >> This can be considered a bug, but is probably not very problematic in >> practice when the configuration is accessed on a regular basis. >> >> HTH >> Oliver >> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@commons.apache.org For additional commands, e-mail: user-h...@commons.apache.org