คุณสมบัติ isScriptingEnabled ควบคุมว่าอนุญาตให้ใช้สคริปติ้งเอลิเมนต์ (scriptlets, expressions, declarations) ใน JSP ได้หรือไม่
ค่าเริ่มต้นและผลกระทบ
- true (ค่าเริ่มต้น) - อนุญาตให้ใช้ scriptlets (
<% ... %>), expressions (<%= ... %>), และ declarations (<%! ... %>) - false - ห้ามใช้สคริปติ้งเอลิเมนต์ทั้งหมด จะเกิดข้อผิดพลาดขณะแปล (translation-time error) หากพบการใช้งาน
ตัวอย่างการปิดใช้งาน
<%@ page isScriptingEnabled = "false" %>
เมื่อควรใช้ false
เหมาะสำหรับโปรเจกต์ที่ต้องการบังคับใช้แค่ EL (Expression Language) และ JSTL เท่านั้น เพื่อแยก logic ออกจาก view อย่างชัดเจน ลดความซับซ้อน และเพิ่มความปลอดภัย (ป้องกัน XSS จาก scriptlets)
หมายเหตุ: การตั้งค่านี้ไม่ส่งผลต่อ EL expressions (${...}) ซึ่งควบคุมแยกต่างหากด้วย isELIgnored