2012-11-02 12 views
7

मैं कुछ शर्त के आधार पर विभिन्न संसाधन फ़ाइलों को आयात करना चाहता हूं। क्या यह संभव है?आयात विवरणों में एसपीईएल समर्थित है?

ये काम नहीं:

<import resource="#{ systemProperties['foo'] }.xml" /> 

<import resource="#{ T(my.testpkg).getValue() }.xml" /> 
+2

यदि आप वसंत 3.1 या उच्चतर पर हैं, तो आपको शायद [* बीन परिभाषा प्रोफाइल *] (http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1 का उपयोग करना चाहिए अगर आप कर सकते हैं तो इस तरह की चीज के लिए रिलीज़ /)। मुझे लगता है कि बीन ग्राफ का निर्माण होने से पहले ' को काफी जल्दी हल किया गया है। – millimoose

+0

खैर, प्लेसहोल्डर $ {...} आयात विवरणों में काम करने लगते हैं, यह एक उपयोगी सुविधा होगी। –

+1

वे प्लेसहोल्डर्स अभी भी कुछ खास-आधारित हैं: http://blog.springsource.com/2011/02/15/spring-3-1-m1-unified-property-management/। उनके मूल्यों को पार्सिंग से पहले * उपलब्ध होना चाहिए। (या बीन परिभाषाओं को संसाधित करने में कुछ अन्य कदम से पहले, मैं स्प्रिंग आंतरिक से परिचित नहीं हूं।) – millimoose

उत्तर

1

स्पेल समर्थित है, लेकिन वसंत बहुत जल्दी पर इंपोर्ट स्टेटमेंट हल करता है।

जब वसंत आयात विवरणों का समाधान कर रहा है, संपत्ति प्लेसहोल्डर्स को अभी तक हल नहीं किया गया है।

उदाहरण के लिए:

निम्नलिखित गुण निर्धारित करें:

import.fileName=${blah} 
blah=properties.props 

हम तो आयात

<import resource="${import.fileName}" /> 

इस पर ले कर के लिए एक पैरामीटर के रूप में 'import.fileName' संपत्ति का उपयोग कर सकते :

<import resource="${blah}" /> 

और संभवतः संसाधन '$ {blah}' मौजूद नहीं है।

कहा जा रहा है कि आप आयात फ़ाइल नामों को हल करने के लिए गुणों का उपयोग कर सकते हैं।

संबंधित मुद्दे