On Thu, May 24, 2012 at 7:23 PM, Vincent Massol <vincent(a)massol.net> wrote:
On May 24, 2012, at 9:09 AM, Denis Gervalle wrote:
On Tue, May 22, 2012 at 4:03 PM, Vincent Massol
<vincent(a)massol.net>
wrote:
>
> On May 22, 2012, at 3:51 PM, Sergiu Dumitriu wrote:
>
>> On 05/22/2012 08:59 AM, Vincent Massol wrote:
>>>
>>> On May 22, 2012, at 2:49 PM, Vincent Massol wrote:
>>>
>>>> Hi devs,
>>>>
>>>> I need to be able to configuration the location of the HSQLDB
> database/ directory in our installer when executing on windows7
(because on
> windows7 you cannot write to the ProgramFiles
directory).
>>>>
>>>> I'm proposing to add variable substitution so that we can configure
> connectio.url for HSQLDB to point to the environment.permanentDirectory
> location.
>>>>
>>>> We would have:
>>>> <property
>
name="connection.url">jdbc:hsqldb:file:${environment.permanentDirectory)/database/xwiki_db;shutdown=true</property>
>>>>
>>>> Technical details:
>>>> * I'll modify DBCPConnectionProvider. More specifically this part:
>>>>
>>>> String jdbcUrl = System.getProperty(Environment.URL);
>>>> if (jdbcUrl == null) {
>>>> jdbcUrl = props.getProperty(Environment.URL);
>>>> }
>>>> dbcpProperties.put("url", jdbcUrl);
>>>>
>>>> * And look for ${…} , extract the variable name and use the
> XWikiPropertiesConfigurationSource to get the value for that variable
name,
> as a String.
>>>>
>>>> WDYT?
>>>
>>> Note that another solution to this is to move all Hibernate
> configuration data to xwiki.properties… Since we allow property
referencing
> in our xwiki.properties file it would solve
my need too.
>>>
>>> It's a lot more more work though (unless we support both, looking
first
> in xwiki.properties for hibernate properties
and fallbacking to older
> hibernate.cfg.xml if not found, in which case it's a little less work
but
> still substantial). I'm still unsure
I'm prepared to work on this now…
:)
>>>
>>> WDYT?
>>
>> I don't like this that much, since there's a lot more that can be
> configured in the xml file, and the .properties is already getting very
big.
>
> If we really think that the size of the file is important (which I'm not
> sure about) then we have the option of having as many configuration
files
as
possible by using a CompositeConfiguration.
I agree with Sergiu, but this is not a question of file size. Duplicating
the work done for hibernate configuration is not good, we would both
limit
the flexibility since duplicating the whole
possibilities would be hard,
No it wouldn't ;-)
We would automatically take all props starting with storage.hibernate.*
and pass them.
hibernate.cfg.xml is not just a simple list of properties. Are we talking
about the same thing ?
and also confuse those who already knows the
syntax of such file. So, I
like more the variable substitution proposal. With that one, we could
provide a simplified configuration in our ConfigurationSource, while
keeping the possibility of configuring the XML file directly. This is the
best of both worlds IMO.
As I replied to sergiu there's also a 3rd solution: using a different file
but with commons configuration.
Not sure to understand what you means. All I say is that the
hibernate.cfg.xml is a well-known configuration file, and that it is nice
to be able to use it directly. This is why I prefer variable substitution
in that file, taking any properties from our environment.
Thanks
Vincent
> The important point here is not so much to
have hibernate config in the
> same file but rather to have it under our ConfigurationSource mechanism.
>
> Thanks
> -Vincent
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs