سؤال

وأنا جديدة على Icefaces وFacelets على حد سواء، ولكن أنا استخدامها في مشروع جديد. لقد حصلت على عمل كل شيء تكوينه وتعمل بشكل جيد. ومع ذلك، عندما أزور mywebapp / file.xhtml، مصدر قالب facelets كله يأتي في متصفحي. كيف يمكن أن إخفاء هذا لمنع المستخدمين من عرض بلدي قوالب من جانب الخادم؟

هل كانت مفيدة؟

المحلول

ووضع كافة القوالب إلى WEB-INF / someDirectory / القوالب.

وبعد ذلك وفقا للوثائق facelets وضع هذا داخل web.xml لجميع ملفات XHTML الأخرى:

<security-constraint>
    <display-name>Restrict XHTML Documents</display-name>
    <web-resource-collection>
        <web-resource-name>XHTML</web-resource-name>
        <url-pattern>*.xhtml</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <description>Only Let 'developer's access XHTML pages</description>
        <role-name>someone</role-name>
    </auth-constraint>
</security-constraint>

نصائح أخرى

في web.xml يجب أن يكون إدخال التي تمكنك من تكوين سلوك القوالب الأقسام المختلفة (عرض / اخفاء ..)

إذا قمت بنقل الملفات إلى مجلد .jsp WEB-INF (لديك لإعادة تكوين مسار التخطيط الاستراتيجي المشترك للمساهمة في المشروع)، لا يمكن الوصول إليها من خلال URL. كل J2EE خادم / Webcontainer أعرف التصرف بهذه الطريقة.

وهناك طريقة أخرى هي مكتوبة النفس عامل تصفية بريمج الخ.

ولكن، لماذا تريد إخفاء القوالب الخاصة بك؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top