2012-03-13 4 views
5

मैंने Javaranch में भी क्रॉस-पोस्ट किया। मैंने Google खोज करके मेरी सावधानी बरतनी है। मुझे कोई जवाब नहीं मिला।Grails - OSIV - स्टेटिक संसाधनों के लिए "ओपन सत्र इन व्यू" फ़िल्टर रोकें

हमारे पास एक आरईएसटी सेवा आधार वेब अनुप्रयोग है, जिसके लिए बैरोएंड ग्रोवी और ग्रेइल्स (1.3.7 ग्रोवी 1.7.एक्स के साथ) का उपयोग करके लागू किया गया है। मैं समझता हूं कि ओपन सत्र में हाइबरनेट के लिए सामान्य रूप से कैसे काम करता है, और स्प्रिंग के साथ हाइबरनेट को कॉन्फ़िगर करते समय, हम निर्दिष्ट कर सकते हैं कि URL के किस सेट के लिए, ओएसआईवी को फ़िल्टर कॉन्फ़िगरेशन में काम करना चाहिए।

समस्या यह है कि मैं ओएसआईवी फ़िल्टर (जैसे मिलान * .js, * .gif, आदि) के दायरे से यूआरएल के एक सेट को बाहर करने का तरीका नहीं ढूंढ सकता। मैंने हाइबरनेट लॉग से पाया, कि जावास्क्रिप्ट फ़ाइल अनुरोध के लिए भी, ओपन सत्र इन व्यू में आता है और एक सत्र खोलता है और इसे बंद कर देता है।

अग्रिम धन्यवाद।

उत्तर

7

Grails के ओएसआईवी पैटर्न, GrailsOpenSessionInViewFilter और GrailsOpenSessionInViewInterceptor के दो कार्यान्वयन हैं। फ़िल्टर का उपयोग Grails के पुराने संस्करणों में किया गया था लेकिन इंटरसेप्टर अब उपयोग किया जाता है (कम से कम 1.2, 1.3 और 2.0)। चूंकि यह WebRequestInterceptor है, यह केवल नियंत्रक अनुरोधों पर लागू होता है, न कि जावास्क्रिप्ट, सीएसएस, छवियों इत्यादि के लिए स्थिर अनुरोध। इसलिए सरल फ़ाइल अनुरोधों के लिए अनावश्यक रूप से हाइबरनेट सत्र बनाने और बाध्य करने के लिए कोई प्रदर्शन चिंता नहीं है।

+0

उत्तर देने के लिए धन्यवाद! - Susanta – cspider

+0

इसे सही उत्तर के रूप में स्वीकार करने के लिए स्वतंत्र महसूस करें :) –

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