Cho biết lệnh nào sai trong đoạn chương trình sau?
<%
Cookie acookie=null; acookie = new Cookie(); acookie.setMaxAge(60); 4.
response.addCookie(acookie);
%>
%
Trả lời:
Đáp án đúng: B
Đoạn chương trình Java Server Pages (JSP) được cung cấp có một số lỗi cú pháp và logic.
* **Lệnh 1:** `Cookie acookie=null;` Khởi tạo một biến Cookie có tên `acookie` và gán giá trị `null`. Lệnh này hợp lệ.
* **Lệnh 2:** `acookie = new Cookie();` Câu lệnh này không đầy đủ. Constructor của Cookie cần hai tham số: tên (name) và giá trị (value) của cookie. Vì thiếu tham số nên câu lệnh này sai.
* **Lệnh 3:** `acookie.setMaxAge(60);` Thiết lập thời gian tồn tại tối đa của cookie là 60 giây. Lệnh này sẽ gây lỗi NullPointerException nếu lệnh 2 không được sửa.
* **Lệnh 4:** `response.addCookie(acookie);` Thêm cookie vào response để trình duyệt lưu lại. Lệnh này sẽ gây lỗi NullPointerException nếu lệnh 2 không được sửa.
Vì lệnh 2 sai cú pháp, nên đáp án đúng là B.