2015-08-24 6 views
5

द्वारा प्रदत्त स्थैतिक फ़ाइलों को रीफ्रेश करें मैं स्पार्क जावा का उपयोग कर एक प्रोजेक्ट कर रहा हूं। सर्वर की तरफ, कुछ छवियां बनाई गई हैं और मैं उन्हें क्लाइंट में उपलब्ध होना चाहता हूं। चूंकि मेरे पास सर्वर की तरफ छवि बनाने के बाद एक स्थिर सामग्री निर्देशिका है, इसलिए मैं इसे उस निर्देशिका में रखता हूं। हालांकि, यह फ़ाइल तब तक उपलब्ध नहीं है जब तक कि मैं सर्वर को रीबूट नहीं करता। मुझे लगता है कि रनटाइम पर स्पार्क जावा के लिए स्थैतिक निर्देशिका फ़ाइल को रीफ्रेश करने का एक तरीका होना चाहिए ताकि ऑन-रनटाइम बनाई गई छवियों के अनुरोधों को पूरा किया जा सके। सही?स्पार्कजावा

धन्यवाद!

+0

बस एक बेवकूफ सवाल: क्या आप वाकई अपने ब्राउज़र के कैश के कारण नहीं हैं? –

+0

मुझे नहीं लगता कि ऐसा इसलिए हो सकता है क्योंकि मैंने अन्य ब्राउज़रों (यहां तक ​​कि गुप्त मोड में) का उपयोग करके छवि जेनरेट की गई फ़ाइल तक पहुंचने का प्रयास किया है और मैं सक्षम नहीं हूं। यह पता लगाने के लिए मैं कौन सा परीक्षण कर सकता हूं कि यह ब्राउज़र की कैश समस्या है? यदि यह कैश की समस्या है, तो उपयोगकर्ता के साथ असभ्य होने के बिना इसे कैसे हल किया जा सकता है? धन्यवाद! – jevora

उत्तर

2

मैंने इसे पीएनजी को बेस 64 के रूप में एन्कोड करके हल किया है और इसे क्लाइंट को प्रतिक्रिया के रूप में भेज दिया है।

3

documentation का कहना है:

आप staticFiles.location(...) उपयोग करते हैं, जिसका अर्थ है आप classpath में अपने स्टैटिक फ़ाइलें रखने के लिए, निश्चित संसाधनों जब आप अपने आवेदन का निर्माण लक्ष्य फ़ोल्डर में प्रतिलिपि रहे हैं। इसका मतलब है कि आपको स्थैतिक फ़ाइलों को रीफ्रेश करने के लिए अपनी प्रोजेक्ट बनाना/बनाना है। इसके लिए एक कार्यवाही स्पार्क को स्रोत-निर्देशिका के पूर्ण पथ से स्थैतिक फ़ाइलों को पढ़ने के लिए बताना है।

तो इसके बजाय staticFiles.externalLocation() का उपयोग करें।

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