I read in another thread that the change made by ConfigAdmin will not
propagated back to FileInstall.
Too bad for this.

Is this going to be fixed?
Or I need a another solution?

On Wed, Oct 13, 2010 at 8:50 PM, LongkerDandy <[email protected]>wrote:

> Hi
>
> Try to using FileInstall and ConfigAdmin together.
> I can read the config properties from ConfigAdmin,
> But I have problem to write it back.
> Both FileInstall .cfg file and ConfigAdmin cache .config filw won't update.
> My code is like:
>
>             Configuration config =
> configAdmin.getConfiguration("xxx.xxx.xxx.xxx");
>             props = config.getProperties();
>             props = new Hashtable();
>             props.put("xxx", "xxx");
>             config.update(props);
>
> Any clue?
>
> Thanks
> LongkerDandy
>
>
>
> On Wed, Oct 13, 2010 at 3:21 PM, Felix Meschberger <[email protected]>wrote:
>
>> Hi,
>>
>> Just to clarify what the OSGi Configuration Admin Service is all about:
>>
>>  - Allows Management Agents (administrators, tools, whatever) to manage
>>    configuration
>>  - Delivers configuration to interested parties
>>  - Persistently stores configuration
>>
>> A Configuration basically is just a Dictionary whose keys are strings
>> (case-insensitive) and whose values are of a limited set of types,
>> basically primitive types, their wrappers plus Collections or Arrays
>> thereof. (For the OSGi R 4.3 release it is planed to have more
>> interesting ways to describe configuration....)
>>
>> Back to your question: Yes you can use Configuration Admin for your
>> configuration and yes you can put into the configuration whatever you
>> want.
>>
>> To manage configuration you have a number of tools at your disposal:
>>
>>  - Use the Web Console allowing for a simple GUI to configure values
>>     (makes use of the Metatype Service to describe configurations)
>>  - Use File Install to provide preconfigured configuration files to
>>     be loaded into the Configuration Admin service automatically.
>>     This tool also recognizes changes to files and thus updates
>>     configuration.
>>  - Do it yourself coding an application using the Configuration Admin
>>     Service API...
>>
>> IIRC the configuration files processed by File Install are more or less
>> pure property files.
>>
>> Regards
>> Felix
>>
>> On 13.10.2010 09:05, Christian Schneider wrote:
>> >  Hi,
>> >
>> > I am currently also evaluating the config admin service. I ported a
>> > spring application to osgi and now have the problem where to put the
>> > properties files. The property files contain db and jms connection
>> infos.
>> > Is config admin service the right tool for this job?
>> >
>> > I already succeeded in creating the config programmatically and using it
>> > in spring with help of the spring osgi config admin support. As
>> > implementation I used the felix cm bundle. What I do not like is that
>> > the persisted files contain additional information compared to the
>> > normal property files. So it is quite difficult to create and change
>> > them by hand. If I only put the original properties into the file I even
>> > get a nullpointer exception.
>> > Is it possible to conffigure felix cm to work with pure propety files
>> > that do not contain additional information or would you recommand
>> > another aproach?
>> >
>> > Thanks
>> >
>> > Christian
>> >
>> >
>> > Am 13.10.2010 08:14, schrieb Felix Meschberger:
>> >> Hi,
>> >>
>> >> On 13.10.2010 05:55, LongkerDandy wrote:
>> >>> Hi
>> >>>
>> >>> I'm try to use ConfigAdmin to save and load configurations.
>> >>> The default place of the configurations is under the cache folder and
>> >>> deep
>> >>> into the ConfigAdmin bundle.
>> >>>
>> >>> I don't know it is designed like this.
>> >> Yes, the default location is the bundle private data area provided by
>> >> the framework through the BundleContext.getDataFile(String) method.
>> >>
>> >>> I should suppose to have some pre-defined configuration values,
>> >>> And when I deliver my software there is no cache folder, how can I put
>> i
>> >>> into this.
>> >>>
>> >>> I try to change the configuration location to the felix/conf folder
>> like
>> >>> this:
>> >>> felix.cm.dir=../../../conf
>> >>>
>> >>> But it complains about ".." reference.
>> >>>
>> >>> I also wondered if I can use the default "config.properties" with
>> >>> ConfigAdmin
>> >> You can use and you can change the setup.
>> >>
>> >> BUT: This is not to inject default configuration. This data area must
>> be
>> >> configured private to the Configuration Admin service because changes
>> >> are expected to only be carried out by the Configuration Admin service.
>> >>
>> >> If you want to provide "default" configuration you might want to
>> >> consider FileInstall and provide respective .cfg files. See [1] for
>> more
>> >> details.
>> >>
>> >> Hope this helps.
>> >>
>> >> Regards
>> >> Felix
>> >>
>> >> [1] http://felix.apache.org/site/apache-felix-file-install.html
>> >>
>> >> ---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: [email protected]
>> >> For additional commands, e-mail: [email protected]
>> >>
>> >>
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
>

Reply via email to