/WEB-INF
फ़ोल्डर में फ़ाइलें वास्तव में एंडुसर द्वारा सार्वजनिक रूप से सुलभ नहीं हैं। तो आपके पास http://localhost:8080/contextname/WEB-INF/some.xhtml
जैसी कुछ नहीं हो सकती है। यह एक संभावित सुरक्षा छेद होगा क्योंकि एंडुसर /WEB-INF/web.xml
और अन्य लोगों के बीच देखने में सक्षम होगा।
आप तथापि, मास्टर टेम्पलेट फ़ाइलों डाल करने के लिए /WEB-INF
फ़ोल्डर का उपयोग कर सकते में फ़ाइलों और टैग फ़ाइलों में शामिल हैं उदाहरण के लिए, निम्न टेम्पलेट ग्राहक page.xhtml
जो /WEB-INF
बाहर रखा जाता है और है http://localhost:8080/contextname/page.xhtml
द्वारा पहुँचा जा सकता है:।
<ui:composition template="/WEB-INF/templates/template.xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets"
>
<ui:define name="content">
...
<ui:include src="/WEB-INF/includes/include.xhtml" />
...
</ui:define>
</ui:composition>
मास्टर टेम्पलेट्स रखने और /WEB-INF
में फ़ाइलों को शामिल करने का लाभ यह है कि एंडयूसर ब्राउज़र एड्रेस बार में अपने यूआरएल को दर्ज/अनुमानित करके सीधे उन्हें खोलने में सक्षम नहीं होगा। सामान्य पृष्ठ और टेम्पलेट क्लाइंट जिन्हें सीधे एक्सेस किया जाना चाहिए /WEB-INF
फ़ोल्डर में नहीं रखा जाना चाहिए।
वैसे, समग्र घटक फ़ाइलों को बदले में सार्वजनिक रूप से सुलभ नहीं माना जाता है, हालांकि वे /resources
फ़ोल्डर में डिफ़ॉल्ट रूप से एक्सेसिबल द्वारा निर्धारित विनिर्देश के अनुसार हैं। आप सुनिश्चित करें कि आप therefor provided components का उपयोग करके सभी संसाधनों का उपयोग इतना है कि वे URL में /resources
द्वारा पहुँचा कभी नहीं किया है (लेकिन /javax.faces.resource
द्वारा बजाय) करते हैं, तो आप निम्न बाधा web.xml
को /resources
फ़ोल्डर में सभी सार्वजनिक उपयोग ब्लॉक करने के लिए जोड़ सकते हैं:
<security-constraint>
<display-name>Restrict direct access to the /resources folder.</display-name>
<web-resource-collection>
<web-resource-name>The /resources folder.</web-resource-name>
<url-pattern>/resources/*</url-pattern>
</web-resource-collection>
<auth-constraint />
</security-constraint>
यह एक उत्कृष्ट प्रश्न है जो चेहरे के कई पहलुओं पर छूता है। – Thufir