Selamlar,

Şöyle bir şey çözüm olabilir mi:
http://stackoverflow.com/questions/9625617/how-do-i-use-an-optional-properties-file-in-a-spring-configuration-file


Cafer Şimşek


2014-07-18 10:33 GMT+03:00 Alper Kanat <[email protected]>:

> Selam,
>
> Bir Spring projesinde classpath'te geliştirme amaçlı tuttuğum properties
> dosyası var. Bunu biraz da projeyi çalıştırmak için harici bir efor
> gerekmesin diye yapıyorum. Ama dışarda belirlenen bir yere bir properties
> dosyası koyarsam onu okusun istiyorum.
>
> Bunun için application context xml'inde <context:property-placeholder>,
> Java annotation gibi yöntemlerle bir sürü şey denedim. Sonrasında kodun bir
> yerinde de;
>
> @Autowired
> private Environment env;
>
> ...
> env.getProperty("foo")
> ...
>
> yaptığımda null alıyorum. Java Annotation'ıyla yazdığımız Configuration
> sınıfının tepesine @PropertySource({ "classpath:foo.properties" }) gibi bir
> tanımlama yaparsam çalışıyor. Ancak fallback etmesini istediğim dışardaki
> properties dosyasını yazarsam ve o dosya bulunamazsa Exception fırlatıyor.
>
> Bunu try/catch ile manuel yapmak da mümkün (hatta yapılmışı var projede)
> biliyorum ama ben bu işi en Spring'çe yöntemle nasıl çözeriz'i bulmaya
> çalışıyorum. XML'de son yaptığım tanımlama şöyle;
>
> <bean id="propertyConfigurer"
> class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer">
>         <property name="locations">
>             <list>
>                 <value>classpath:platform.properties</value>
>             </list>
>         </property>
>     </bean>
>
> Annotation'ları kaldırırsam bu bean'i hiç bir zaman Environment ile
> kullanamıyorum.
>
> ---
> Quis custodiet ipsos custodes?
>
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
> Liste kurallari: http://liste.linux.org.tr/kurallar.php
>
>
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap