Saturday, March 7, 2009

JSP ไม่รู้จัก EL

ในกรณีนี้สืบเนื่องมากจาก ผมได้ทำการแก้ไขเว็บเก่าโดยตอนทำเว็บแรกๆก็ใช้ Dream และเขียนแบบธรรมดา
ต่อมาเมื่อทำการเพิ่มเมนูเพื่อไปใช้กับเว็บอื่น ผมก็ได้ย้าย project นี้ไปไว้บน Netbean6.1 และส่วนที่เพิ่มมาก็
เขียนแบบ MVC (เฉพาะเมนูที่เพิ่มใหม่) และได้ทำการคัดลอกส่วนที่เพิ่มมานี้จากโปรเจ็คอื่น ก็เลยพบปัญหาดังนี้
ปัญหา : พบว่าหน้า jsp ไม่รู้จัก EL คือ ถ้าพิมพ์ ${1+1} อันที่จริงแล้วจะได้ 2 แสดงมาหน้าเว็บ แต่มันดันแสดง
${1+1} ออกมาซะนี่
สาเหตุ : ผมได้หาสาเหตุอยู่หลายวันทีเดียว เพราะว่าผมได้เพิ่ม lib jstl1.1 แล้วและหน้า jsp ก็ได้ใส่
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> ไปแล้วและคำสั่ง jstl ก็ทำงานได้ปรกติ เว้นก็แต่ EL เท่านั้นที่ไม่ทำงาน ก็เลยนึกได้ว่าอาจจะเป็นที่ web.xml ก็เป็นได้เลยที่ไม่ได้เปิดให้สนับสนุน EL
ทางแก้ไข : แต่ผมไม่ต้องการที่จะแก้ไขที่ web.xml เลยแก้ไขที่หน้าที่ต้องแสดง EL คือได้เพิ่มโค้ด
<%@ page isELIgnored='false'%> เพื่อให้ jsp ไม่ละเลย EL ก็ปรากฏว่า jsp รู้จัก EL ซะทีเฮ้อ(เหนื่อยมาหลายวัน)

No comments: